diff --git a/notebooks/correlation/post_acquisition_correlation.ipynb b/notebooks/correlation/post_acquisition_correlation.ipynb
index a5ee7ce25369d3d1cad1a2f9e5f3f25fe13e18c8..5ed09581115b13c86cb5e048552a74058f6c383a 100644
--- a/notebooks/correlation/post_acquisition_correlation.ipynb
+++ b/notebooks/correlation/post_acquisition_correlation.ipynb
@@ -30,7 +30,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 2,
    "metadata": {},
    "outputs": [],
    "source": [
@@ -92,7 +92,7 @@
     "filename_fluo = os.path.join(fluo_dir, '20240209_Lsw_060_B36G3.lif')\n",
     "filename_nav = os.path.join(serialem_dir, 'navi.nav')\n",
     "\n",
-    "output_dir = os.path.join('/Volumes/ImageAnalysisHub/malbert/correlative_cryo_em/test2',\n",
+    "output_dir = os.path.join('/Volumes/ImageAnalysisHub/malbert/correlative_cryo_em/test3',\n",
     "                          os.path.basename(exp_dir))\n",
     "os.makedirs(output_dir, exist_ok=True)\n",
     "\n",
@@ -179,7 +179,7 @@
     "tomo_files = os.listdir(serialem_dir)\n",
     "tomo_files = sorted([f for f in tomo_files if 'TS' in f and f.endswith('mrc.mdoc')])[:]\n",
     "\n",
-    "tomo_files = tomo_files[:1] # for test run\n",
+    "tomo_files = tomo_files[:] # for test run\n",
     "tomo_files"
    ]
   },
@@ -437,7 +437,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 13,
    "metadata": {},
    "outputs": [],
    "source": [
@@ -449,11 +449,13 @@
     "viewer = napari.Viewer()\n",
     "\n",
     "lds = [viewer_utils.create_image_layer_tuples_from_msim(\n",
-    "    msim, transform_key='corr',\n",
+    "    msim,\n",
+    "    transform_key='corr4',\n",
+    "    # transform_key='to_correlate',\n",
     "    ch_name=sorted_nodes[il],\n",
-    "    colormap='grey' if not il else (\"red\" if 'MMM' in sorted_nodes[il] else (\"green\" if 'Anchor' in sorted_nodes[il] else 'blue')),\n",
+    "    colormap='gray' if not il else (\"red\" if 'MMM' in sorted_nodes[il] else (\"green\" if 'Anchor' in sorted_nodes[il] else 'blue')),\n",
     "    )[0]\n",
-    "    for il, msim in enumerate(msims_corr[:2])]\n",
+    "    for il, msim in enumerate(msims_corr[:])]\n",
     "viewer_utils.add_image_layer_tuples_to_viewer(viewer, lds, manage_viewer_transformations=False)\n",
     "viewer.reset_view()"
    ]
@@ -505,7 +507,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 15,
    "metadata": {},
    "outputs": [],
    "source": [
@@ -551,7 +553,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 18,
    "metadata": {},
    "outputs": [],
    "source": [
@@ -560,7 +562,7 @@
     "\n",
     "# align centers\n",
     "centers = [si_utils.get_center_of_sim(msi_utils.get_sim_from_msim(msim), transform_key=transform_key)\n",
-    "                for msim, transform_key in zip([msim_LMM, mxim_fluo], ['corr', 'metadata'])]\n",
+    "                for msim, transform_key in zip([msim_LMM, mxim_fluo], ['corr4', 'metadata'])]\n",
     "\n",
     "centering_affine = param_utils.affine_from_translation(centers[0] - centers[1])\n",
     "\n",
@@ -570,7 +572,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 19,
    "metadata": {},
    "outputs": [],
    "source": [
@@ -598,7 +600,7 @@
     "import napari\n",
     "viewer_affinder = napari.Viewer()\n",
     "ld_c = viewer_utils.create_image_layer_tuples_from_msim(msim_LMM,\n",
-    "        transform_key='corr', colormap='gray', contrast_limits=[0,2000], ch_name='LMM', data_as_array=True)\n",
+    "        transform_key='corr4', colormap='gray', contrast_limits=[0,2000], ch_name='LMM', data_as_array=True)\n",
     "ld_f = viewer_utils.create_image_layer_tuples_from_msim(mxim_fluo_reg,\n",
     "        transform_key='metadata_centered', colormap='viridis', contrast_limits=[0,30000], ch_name='fluo', data_as_array=True)\n",
     "\n",
@@ -621,7 +623,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 24,
    "metadata": {},
    "outputs": [],
    "source": [
@@ -629,10 +631,17 @@
     "fluo_new_affine = viewer_affinder.layers[[l.name for l in viewer_affinder.layers].index('fluo')].affine.affine_matrix\n",
     "\n",
     "# or use previously obtained affine\n",
+    "\n",
+    "# corr\n",
     "# fluo_new_affine = np.array([[ 1.05403374e+00,  1.56244380e-01, -1.26217326e+03],\n",
     "#        [-1.43810518e-01,  1.08022110e+00, -1.02384343e+03],\n",
     "#        [ 0.00000000e+00,  0.00000000e+00,  1.00000000e+00]])\n",
     "\n",
+    "# corr4\n",
+    "fluo_new_affine = np.array([[ 9.63959861e-01,  1.28591366e-01, -1.14593774e+03],\n",
+    "       [-1.23220019e-01,  9.70173034e-01, -9.29093874e+02],\n",
+    "       [ 0.00000000e+00,  0.00000000e+00,  1.00000000e+00]])\n",
+    "\n",
     "affine_fluo_to_LMM = np.dot(fluo_new_affine,\n",
     "            np.linalg.inv(msi_utils.get_transform_from_msim(mxim_fluo_reg, transform_key='metadata_centered')[0]))\n"
    ]
@@ -661,7 +670,7 @@
     "import napari\n",
     "viewer = napari.Viewer()\n",
     "ld_c = viewer_utils.create_image_layer_tuples_from_msim(msim_LMM,\n",
-    "        transform_key='corr', colormap='gray', contrast_limits=[0,2000], ch_name='LMM')\n",
+    "        transform_key='corr4', colormap='gray', contrast_limits=[0,2000], ch_name='LMM')\n",
     "ld_f = viewer_utils.create_image_layer_tuples_from_msim(mxim_fluo,\n",
     "        transform_key='preregistered', colormap='viridis', contrast_limits=[0,30000], ch_name='fluo')\n",
     "\n",
@@ -696,7 +705,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 28,
    "metadata": {},
    "outputs": [],
    "source": [
@@ -728,19 +737,23 @@
    "source": [
     "# visualize in napari\n",
     "\n",
-    "# import napari\n",
-    "# viewer = napari.Viewer()\n",
-    "# ld_c = []\n",
-    "# for msim in [msim_LMM]:\n",
-    "#     ld_c += viewer_utils.create_image_layer_tuples_from_msim(msim,\n",
-    "#         transform_key='corr', colormap='gray', ch_name='LMM')\n",
-    "    \n",
-    "# ld_f = []\n",
-    "# for msim in mxims_fluo_max[:4]:\n",
-    "#     ld_f += viewer_utils.create_image_layer_tuples_from_msim(msim,\n",
-    "#         transform_key='preregistered', colormap='gray', ch_name='FM')\n",
+    "import napari\n",
+    "viewer = napari.Viewer()\n",
     "\n",
-    "# viewer_utils.add_image_layer_tuples_to_viewer(viewer, ld_c + ld_f)"
+    "ld_c = []\n",
+    "for msim in [msim_LMM]:\n",
+    "    ld_c += viewer_utils.create_image_layer_tuples_from_msim(msim,\n",
+    "        transform_key='corr4', colormap='gray', ch_name='LMM')\n",
+    "\n",
+    "ld_f = []\n",
+    "for msim in mxims_fluo_max[:3]:\n",
+    "    ld_f += viewer_utils.create_image_layer_tuples_from_msim(msim,\n",
+    "        transform_key='preregistered',\n",
+    "        # colormap='gray',\n",
+    "        # ch_name='FM',\n",
+    "        )\n",
+    "\n",
+    "viewer_utils.add_image_layer_tuples_to_viewer(viewer, ld_c + ld_f)"
    ]
   },
   {
@@ -789,15 +802,17 @@
     "    \n",
     "    # fluo scenes\n",
     "    pt_dict['fluo_scenes'] = []\n",
+    "    pt_dict['fluo_msims'] = []\n",
     "    for imxim, mxim in tqdm(enumerate(mxims_fluo_max[:])):\n",
     "        is_inside = clem_utils.pt_in_mxim(pt,\n",
     "            msi_utils.multiscale_sel_coords(mxim, {'t': 0}), transform_key='preregistered')#, world_affine=M)\n",
     "        if not is_inside: continue\n",
     "        scene = fluo_scenes[imxim]\n",
     "        pt_dict['fluo_scenes'].append(scene)\n",
+    "        # pt_dict['fluo_msims'].append(mxim)\n",
     "\n",
     "    pt_dict['serialem_files'] = []\n",
-    "\n",
+    "    pt_dict['serialem_msims'] = []\n",
     "    n = fn\n",
     "    while len(list(g.out_edges(n))) > 0:\n",
     "        print(n)\n",
@@ -811,7 +826,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 32,
    "metadata": {},
    "outputs": [],
    "source": [
@@ -825,6 +840,98 @@
     "    pickle.dump(g, f, pickle.HIGHEST_PROTOCOL)"
    ]
   },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## View all modalities in napari"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 71,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# visualize in napari\n",
+    "\n",
+    "import napari\n",
+    "viewer = napari.Viewer()\n",
+    "\n",
+    "serialem_transform_key = 'corr4'\n",
+    "\n",
+    "lds = [viewer_utils.create_image_layer_tuples_from_msim(\n",
+    "    msims_corr[0],\n",
+    "    transform_key=serialem_transform_key,\n",
+    "    ch_name='LMM',\n",
+    "    colormap='gray'\n",
+    "    )[0]]\n",
+    "ls = viewer_utils.add_image_layer_tuples_to_viewer(viewer, lds, manage_viewer_transformations=False)\n",
+    "\n",
+    "# ld_f = [viewer_utils.create_image_layer_tuples_from_msim(msim,\n",
+    "#     transform_key='preregistered',\n",
+    "#     name_prefix='Fluo_grid',\n",
+    "#     )[0] for msim, scene in zip(mxims_fluo_max, fluo_scenes) if 'Merged' in scene]\n",
+    "# ls = viewer_utils.add_image_layer_tuples_to_viewer(viewer, ld_f, manage_viewer_transformations=False)\n",
+    "\n",
+    "for k, pt_dict in pt_dicts.items():\n",
+    "\n",
+    "    # if not k == 'TS_01': continue\n",
+    "\n",
+    "    serialem_msims = [msims_corr[sorted_nodes.index(sem_file)]\n",
+    "        for sem_file in pt_dict['serialem_files'] if not 'LMM' in sem_file]\n",
+    "\n",
+    "    fluo_msims = [mxim for imxim, mxim in enumerate(mxims_fluo_max)\n",
+    "        if fluo_scenes[imxim] in pt_dict['fluo_scenes'] if not 'Merged' in fluo_scenes[imxim]]\n",
+    "\n",
+    "    lds = [viewer_utils.create_image_layer_tuples_from_msim(\n",
+    "        msim,\n",
+    "        transform_key=serialem_transform_key,\n",
+    "        # transform_key='to_correlate',\n",
+    "        ch_name=k + ' - SEM - ' + pt_dict['serialem_files'][il],\n",
+    "        colormap='gray' if 'LMM' in pt_dict['serialem_files'][il]\n",
+    "        else (\"red\" if 'MMM' in pt_dict['serialem_files'][il]\n",
+    "        else (\"green\" if 'Anchor' in pt_dict['serialem_files'][il]\n",
+    "        else 'blue')),\n",
+    "        )[0]\n",
+    "        for il, msim in enumerate(serialem_msims[:])]\n",
+    "\n",
+    "    ls = viewer_utils.add_image_layer_tuples_to_viewer(viewer, lds, manage_viewer_transformations=False)\n",
+    "    link_layers(ls, attributes=['visible'])\n",
+    "        \n",
+    "    ld_f = []\n",
+    "    for imsim, msim in enumerate(fluo_msims[:]):\n",
+    "        ld_f += viewer_utils.create_image_layer_tuples_from_msim(msim,\n",
+    "            transform_key='preregistered',\n",
+    "            name_prefix = k + ' - Fluo - ' + pt_dict['fluo_scenes'][imsim],\n",
+    "            )\n",
+    "\n",
+    "    ls = viewer_utils.add_image_layer_tuples_to_viewer(viewer, ld_f, manage_viewer_transformations=False)\n",
+    "    link_layers(ls)\n",
+    "\n",
+    "    text = {\n",
+    "        'string': '{string}',\n",
+    "        'size': 8,\n",
+    "        'color': 'white',\n",
+    "        'translation': np.array([-30, 0]),\n",
+    "    }\n",
+    "\n",
+    "    features = {\n",
+    "        'string': [k],\n",
+    "    }\n",
+    "\n",
+    "    # show point\n",
+    "    viewer.add_points(\n",
+    "        [pt_dict['pt']],\n",
+    "        features=features,\n",
+    "        text=text,\n",
+    "        size=20,\n",
+    "        face_color='red', edge_color='black', name=k,\n",
+    "        )\n",
+    "\n",
+    "viewer.reset_view()"
+   ]
+  },
   {
    "cell_type": "markdown",
    "metadata": {},
@@ -972,7 +1079,7 @@
  ],
  "metadata": {
   "kernelspec": {
-   "display_name": "lswistak_paper_correlation",
+   "display_name": "correlation",
    "language": "python",
    "name": "python3"
   },
@@ -986,7 +1093,7 @@
    "name": "python",
    "nbconvert_exporter": "python",
    "pygments_lexer": "ipython3",
-   "version": "3.10.14"
+   "version": "3.10.16"
   }
  },
  "nbformat": 4,