A snakemake workflow for performing radial intensity analysis of signal in the nucleolus. This code was adapted from the pipeline that was published by Quinodoz et al. [1]. The link to their repository can be found here.
Place raw experiment folders with TIFF stacks here:
data/
First you would need to cd into the workflow directory. Assuming you are in the radial-intensity-analysis directory you would run :
cd workflowNow run the snakemake command to execute the pipeline on the directoires inside data
snakemake -j 8 --use-conda --conda-frontend conda Outputs of the pipeline can be found in results/<experiment>/.
Install R-notebook from cran.r-project.org
Ensure that results are in "Results" directory
Ensure that read.csv() functions point to the correct files in R. notebooks.
Run notebooks.
- Install Miniconda or Conda (e.g. Miniconda).
- Install git on the computer if not present If you are in Windows skip to the Troubleshooting section instead of step 3 and then proceed to step 4.
- Install the environment using the yml file:
conda env create -f workflow/environment.ymlThis creates a conda environment named **cellprofiler-smk**
**Note:** If you encounter issues with java or sql. Check out out [Troubleshooting](#troubleshooting) section.
- Clone this repository and move into it:
git clone <repo-url>
cd <repo>- Activate the conda environment:
conda activate cellprofiler-smk- Run the following to start the analysis:
conda install -c bioconda -c conda-forge snakemake├── data/ # raw input TIF/TIFF stacks
│ ├── <experiment1>/
│ │ ├── <sample1>.tif
│ │ └── <sample2>.tif
│ └── <experiment2>/
│ └── <sample1>.tiff
├── resources/ # static assets (CellProfiler .cppipe, plugins)
│ ├── rdf.cppipe
│ └── plugins/
├── workflow/ # workflow code & envs
│ ├── Snakefile
│ ├── scripts/
│ │ ├── mip.py
│ │ └── rdf.py
│ ├── envs/
│ │ └── environment.yaml
│ └── logs/ # runtime logs (auto‑generated)
└── results/ # generated outputs
└── <experiment>/
├── mip/
├── cellprofiler_outputs/
└── plots/
| What you want to change | Where / how |
|---|---|
| MIP channels & LUT | Edit channels / colors parameters in rule mip inside Snakefile. Max no. of channels: 5. Colors - magenta (m), orange(o), red (r), green (g), blue (b) |
| CellProfiler pipeline | Replace resources/rdf.cppipe and adjust pipeline path in rule cellprofiler |
If you run into issues or have improvements, feel free to open an issue or pull request.
These instructions are for installing CellProfiler 4.0+, and < 5, which will run on Python 3. To install the previous 3.1.9 release, see this page.
Download and install packages for Python 3.8 64-bit on your machine
We recommend starting with a fresh install of Python (in a conda environment).
When installing, it's a good idea to enable the "Add python to path" option
Download and install Microsoft Visual C++ Redistributable 2015-2022
Select the version appropriate for your architecture. On windows, you can determine this by going to Control Panel then searching for System and looking next to "System type:" for your processor architecture.
Download and install Microsoft Visual Studio C++ build tools
NOTE: Make sure to check 'Desktop development with C++' under Desktop and Mobile in the installer
Also make sure the following packages are installed ( Go inside Visual Studio's "Modify" option to check):
- .NET Framework 4.8 development tools (targeting pack and SDK)
- C++ CMake tools for Windows
- MSVC v143 - VS 2022 C++ x64/x86 build tools (choose the latest)
- MSVC v140 - VS 2015 C++ x64/x86 build tools (choose the latest)
- SQL Server Data Tools - Build Tools
- C++ core features
- C++ Build Tools core features
- MSBuid support for LLVM (clang-cl) toolset
- Windows 11 SDK (if on Windows 11) els Windows 10 SDK - highest version number
- Window Universal C Runtime
Download and install Java JDK 11 (The OpenJDK distribution is now called Temurin)
Click on the default installation icon on the website, It will install the appropriate one for your system.
You can alternatively install from oracle.com if you'd like, though you will need to make an Oracle account.
Access the Windows Environment Variables and make sure that both JAVA_HOME and JDK_HOME are set to the location of your JDK installation (one or both may be set during the installation process, depending on the exact installer you used and your configuration during install). For each new variable, set its value to the location of your JDK installation (i.e., the location of the folder beginning with 'jdk11'). You can do this by clicking the Browse Directory... button. Usually this is in your 'Program Files' in a folder called 'Java'.
cd into the directory where you cloned CellProfiler
Type pip install -e .
At this point, CellProfiler is installed! You may now run CellProfiler by typing cellprofiler from the command line. To test it out type
cellprofiler --versionThis should give you the version number of the installed celllprofiler.
If you run into an error with charset_normalizer. Forece reintall the package using:
Install missing snakemake and seaborn pacakages:
conda install -c bioconda -c conda-forge snakemake seaborn``If you run into errors, especially any with cellprofiler_core in the stack trace, you may want to also clone and install CellProfiler-core from source; if you do this, you will typically need to also pull core whenever pulling your CellProfiler master.
If you encounter any other errors, please get in touch (with the cellprofiler team)!
Change the directory of plugins to the github downloaded plugin folder
File > Preferences > Plugin
[1] Quinodoz, S.A., Jiang, L., Abu-Alfa, A.A., Comi, T.J., Zhao, H., Yu, Q., Wiesner, L.W., Botello, J.F., Donlic, A., Soehalim, E., et al. (2025). Mapping and engineering RNA-driven architecture of the multiphase nucleolus. Nature 644, 557–566. 10.1038/s41586-025-09207-4.
[2] Dogra P, Ferrolino MC, Khatun S, Tolbert M, Miao Q, Pruett-Miller SM, Pitre A, Tripathi S, Campbell GE, Bajpai R, Freyaldenhoven T, Gibbs E, Park CG, Kriwacki RW. Granular component sub-phases direct ribosome biogenesis in the nucleolus. bioRxiv [Preprint]. 2025 Mar 4:2025.03.01.640913. doi: 10.1101/2025.03.01.640913. PMID: 40093048; PMCID: PMC11908144.