ml-struct-bio/cryodrgn

analyze is not creating jupyter notebook tools

omardebei opened this issue · 1 comments

Hi everybody,

I am running cryodrgn on a cluster (which has slurm). I installed it following the quick install instructions (https://ez-lab.gitbook.io/cryodrgn/installation) and the Option 1: Install with pip.

The analysis up to train vae worked smoothly, however I am experiencing issues with analyze job. In particular, I could not make cryodrgn generate jupyter notebook tools for following analysis. I am attaching here the list of packages into the conda env I generate for cryodrgn analysis my_packages_cryodrgn.txt

If I run:

cryodrgn analyze /hpc/node/wn42/G_BIOCRYO/common/cryodrgn/esperimento_4to3/train_output_4to3_1024_256 49

  1. slurm*.out file stop at:
    (INFO) (eval_vol.py) (14-Mar-24 18:38:08) Finished in 0:03:38.092308
    (INFO) (analyze.py) (14-Mar-24 18:38:08) Running UMAP...
    (INFO) (analyze.py) (14-Mar-24 18:39:27) Generating plots...
    [slurm-6cd_analyze_1024_265_newCUDA_wn44.sh.2103583.out.txt]

I am attaching here the entire slurm*.out file in case it is needed slurm-6cd_analyze_1024_265_newCUDA_wn44.sh.2103583.out.txt

  1. slurm*.err file tells :

/hpc/group/G_BIOCRYO/.conda/envs/cryodrgn/lib/python3.9/site-packages/seaborn/_decorators.py:36: FutureWarning: Pass the following variables as keyword args: x, y. From version 0.12, the only valid positional argument will be data, and passing other arguments without an explicit keyword will result in an error or misinterpretation.
warnings.warn(
/hpc/group/G_BIOCRYO/.conda/envs/cryodrgn/lib/python3.9/site-packages/seaborn/_decorators.py:36: FutureWarning: Pass the following variables as keyword args: x, y. From version 0.12, the only valid positional argument will be data, and passing other arguments without an explicit keyword will result in an error or misinterpretation.
warnings.warn(
/hpc/group/G_BIOCRYO/.conda/envs/cryodrgn/lib/python3.9/site-packages/seaborn/_decorators.py:36: FutureWarning: Pass the following variables as keyword args: x, y. From version 0.12, the only valid positional argument will be data, and passing other arguments without an explicit keyword will result in an error or misinterpretation.
warnings.warn(
/hpc/group/G_BIOCRYO/.conda/envs/cryodrgn/lib/python3.9/site-packages/seaborn/_decorators.py:36: FutureWarning: Pass the following variables as keyword args: x, y. From version 0.12, the only valid positional argument will be data, and passing other arguments without an explicit keyword will result in an error or misinterpretation.
warnings.warn(
Traceback (most recent call last):
File "/hpc/group/G_BIOCRYO/.conda/envs/cryodrgn/bin/cryodrgn", line 8, in
sys.exit(main())
File "/hpc/group/G_BIOCRYO/.conda/envs/cryodrgn/lib/python3.9/site-packages/cryodrgn/main.py", line 72, in main
args.func(args)
File "/hpc/group/G_BIOCRYO/.conda/envs/cryodrgn/lib/python3.9/site-packages/cryodrgn/commands/analyze.py", line 385, in main
analyze_zN(
File "/hpc/group/G_BIOCRYO/.conda/envs/cryodrgn/lib/python3.9/site-packages/cryodrgn/commands/analyze.py", line 250, in analyze_zN
analysis.scatter_color(
File "/hpc/group/G_BIOCRYO/.conda/envs/cryodrgn/lib/python3.9/site-packages/cryodrgn/analysis.py", line 337, in scatter_color
cbar.draw_all()
AttributeError: 'Colorbar' object has no attribute 'draw_all'

If you could help me it would be great.

Best wishes,
Omar

Hi Omar, this is a known issue with cryoDRGN v2.3.0, please see #312 for more information and how to resolve.

tldr; you can fix this by installing a newer version of cryoDRGN from source (using git clone) or by using pip to downgrade the version of matplotlib you have installed in your environment.