schneebergerlab / syri

Synteny and Rearrangement Identifier
https://schneebergerlab.github.io/syri/
MIT License
303 stars 36 forks source link

Matplotlib issue #214

Closed LeebanY closed 7 months ago

LeebanY commented 9 months ago

Hi,

Thanks for the handy tool.

I've been trying to implement syri on two chromosomal level assemblies. I first used minimap2 with the following command:

minimap2 -ax asm10 --eqx -t 16 -o Tele_com_oc.sam $refgenome $qrygenome

And then used syri with the following parameters:

syri -c Tele_com_oc.sam -r $refgenome -q $qrygenome -k -F S --nosnp --nc 16 --tdgaplen 50000 --dir syri_outdir_tele --log DEBUG --lf Syri_debug.log

However, there seems to be an issue with matplotlib that kills syri right after matching chromosome IDs. I have installed syri on multiple different new environments using yaml files from colleagues with fully functional syri, so I don't think it's an installation issue. I have also updated my conda, so I'm unsure it is that either. I'm wondering if you've encountered this problem and how to fix it.

I've attached the log file and the yaml file for the environment used.

syri_yaml.txt syri_run.log.txt

Thanks, Leeban

mnshgl0110 commented 9 months ago

Have you tried installing it using conda?

LeebanY commented 9 months ago

Yes, I've installed with conda. I think syri must be searching for matplotlib in /.local/ rather than in the conda env.

mnshgl0110 commented 9 months ago

But is the issue resolved now with conda? If not, then can use please try creating a new conda environment and installing syri there using the following commands:

# Create a new environment and install syri with all dependencies
conda create -n syri_env -c bioconda -c conda-forge syri
# Activate the environment
conda activate syri_env
# test syri installation
syri -h

Syri, by itself, do not fetch dependencies. It uses the python environment and then the python interpreter imports the installed packages. What this means is the error is happening because somehow the matplotlib library is not installed properly in the python environment.