StuntsPT / Structure_threader

A wrapper program to parallelize and automate runs of "Structure", "fastStructure" and "MavericK".
GNU General Public License v3.0
24 stars 11 forks source link

some problem with plotly #76

Closed mthon closed 2 years ago

mthon commented 6 years ago

I installed fast_structure into a virtualenv. I ran it with this command:

structure_threader run -i structure_haploid.tsv -st ./structure -o out3 -t 12 -K 6 -R 20

the plots directory was created but its empty. I also got this error:

INFO: All 120 jobs finished successfully.
Traceback (most recent call last):
  File "/mnt/data1/mike_data/projects/radseq1/STRUCT/bin/structure_threader", line 11, in <module>
    sys.exit(main())
  File "/mnt/data1/mike_data/projects/radseq1/STRUCT/lib/python3.5/site-packages/structure_threader/structure_threader.py", line 332, in main
    full_run(arg)
  File "/mnt/data1/mike_data/projects/radseq1/STRUCT/lib/python3.5/site-packages/structure_threader/structure_threader.py", line 295, in full_run
    create_plts(wrapped_prog, bestk, arg)
  File "/mnt/data1/mike_data/projects/radseq1/STRUCT/lib/python3.5/site-packages/structure_threader/structure_threader.py", line 218, in create_plts
    indfile=arg.indfile, bw=arg.blacknwhite, use_ind=arg.use_ind)
  File "/mnt/data1/mike_data/projects/radseq1/STRUCT/lib/python3.5/site-packages/structure_threader/plotter/structplot.py", line 998, in main
    klist.plotk([k], outdir)
  File "/mnt/data1/mike_data/projects/radseq1/STRUCT/lib/python3.5/site-packages/structure_threader/plotter/structplot.py", line 831, in plotk
    pdiv = plot(fig, include_plotlyjs=False, output_type='div')
  File "/mnt/data1/mike_data/projects/radseq1/STRUCT/lib/python3.5/site-packages/plotly/offline/offline.py", line 469, in plot
    '100%', '100%', global_requirejs=False)
  File "/mnt/data1/mike_data/projects/radseq1/STRUCT/lib/python3.5/site-packages/plotly/offline/offline.py", line 161, in _plot_html
    figure_or_data, validate
  File "/mnt/data1/mike_data/projects/radseq1/STRUCT/lib/python3.5/site-packages/plotly/tools.py", line 1467, in return_figure_from_figure_or_data
    "Empty data list found. Make sure that you populated the "
plotly.exceptions.PlotlyEmptyDataError: Empty data list found. Make sure that you populated the list of data objects you're sending and try again.
Questions? Visit support.plot.ly
StuntsPT commented 6 years ago

Thank you for reporting the issue @mthon . That is really odd behaviour. Did the 120 jobs finish as expected? Eg. in your out3 directory, do you see the str_KX_repY_f files (Where "X" can vary from 1 to 6 and "Y" from 1 to 20, according to your command line)? And do these files have the expected content? Also, can you please post the top 100 lines of one of these files (for any value of K that is not 1, please). Also, did the Evanno test run as expected (eg. do you have a bestK directory with two files inside containing the test results and summary)?

Sorry about all the questions, but those answers should help narrow down the issue.

mthon commented 6 years ago

Yes all 120 jobs finished and I the evanno reports are in the bestK dir.
The structure output files seem to be ok to me. Here's an example: str_K2_rep1_f.zip

StuntsPT commented 6 years ago

Indeed, everything looks ok. I'll try to reproduce the issue on a virtualenv of my own. Can you please confirm which version of plotly you are using on your virtualenv?

mthon commented 6 years ago

Sure - pip says:

plotly==2.5.0 structure-threader==1.2.7

On Mar 22, 2018, at 11:39 PM, Francisco Pina-Martins notifications@github.com wrote:

Indeed, everything looks ok. I'll try to reproduce the issue on a virtualenv of my own. Can you please confirm which version of plotly you are using on your virtualenv?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/StuntsPT/Structure_threader/issues/76#issuecomment-375480771, or mute the thread https://github.com/notifications/unsubscribe-auth/ABr_ODzbbQXtFGSMhrjkj1G3amYFZZ6Tks5thCg4gaJpZM4SzNla.

StuntsPT commented 6 years ago

I cannot reproduce the issue regardless of plotly version on any of my systems. Can you please also provide us with your mainparams and extraparams files? It could be a corner case in some parameter, such as the one in #22 .

StuntsPT commented 6 years ago

So, I just got another such report...

saraema@Thor:~/maverick_outgr$ ~/.local/bin/structure_threader run -K 8 -i IberianP_ssp_out.txt -o IberianP_run/ -t 12 -mv ~/.local/bin/MavericK --params parameters.txt --log=1
INFO: Running: /home/saraema/.local/bin/MavericK -Kmin 8 -Kmax 8 -data /home/saraema/maverick_outgr/IberianP_ssp_out.txt -outputRoot /home/saraema/maverick_outgr/IberianP_run/mav_K8/ -masterRoot / -parameters /home/saraema/maverick_outgr/parameters.txt -alpha 0.007 -alphaPropSD 0.003
INFO: Running: /home/saraema/.local/bin/MavericK -Kmin 7 -Kmax 7 -data /home/saraema/maverick_outgr/IberianP_ssp_out.txt -outputRoot /home/saraema/maverick_outgr/IberianP_run/mav_K7/ -masterRoot / -parameters /home/saraema/maverick_outgr/parameters.txt -alpha 0.007 -alphaPropSD 0.001
INFO: Running: /home/saraema/.local/bin/MavericK -Kmin 5 -Kmax 5 -data /home/saraema/maverick_outgr/IberianP_ssp_out.txt -outputRoot /home/saraema/maverick_outgr/IberianP_run/mav_K5/ -masterRoot / -parameters /home/saraema/maverick_outgr/parameters.txt -alpha 0.013 -alphaPropSD 0.005
INFO: Running: /home/saraema/.local/bin/MavericK -Kmin 6 -Kmax 6 -data /home/saraema/maverick_outgr/IberianP_ssp_out.txt -outputRoot /home/saraema/maverick_outgr/IberianP_run/mav_K6/ -masterRoot / -parameters /home/saraema/maverick_outgr/parameters.txt -alpha 0.013 -alphaPropSD 0.004
INFO: Running: /home/saraema/.local/bin/MavericK -Kmin 4 -Kmax 4 -data /home/saraema/maverick_outgr/IberianP_ssp_out.txt -outputRoot /home/saraema/maverick_outgr/IberianP_run/mav_K4/ -masterRoot / -parameters /home/saraema/maverick_outgr/parameters.txt -alpha 0.021 -alphaPropSD 0.007
INFO: Running: /home/saraema/.local/bin/MavericK -Kmin 3 -Kmax 3 -data /home/saraema/maverick_outgr/IberianP_ssp_out.txt -outputRoot /home/saraema/maverick_outgr/IberianP_run/mav_K3/ -masterRoot / -parameters /home/saraema/maverick_outgr/parameters.txt -alpha 0.032 -alphaPropSD 0.015
INFO: Running: /home/saraema/.local/bin/MavericK -Kmin 2 -Kmax 2 -data /home/saraema/maverick_outgr/IberianP_ssp_out.txt -outputRoot /home/saraema/maverick_outgr/IberianP_run/mav_K2/ -masterRoot / -parameters /home/saraema/maverick_outgr/parameters.txt -alpha 0.051 -alphaPropSD 0.021
INFO: Running: /home/saraema/.local/bin/MavericK -Kmin 1 -Kmax 1 -data /home/saraema/maverick_outgr/IberianP_ssp_out.txt -outputRoot /home/saraema/maverick_outgr/IberianP_run/mav_K1/ -masterRoot / -parameters /home/saraema/maverick_outgr/parameters.txt -alpha 1.0 -alphaPropSD 1.0
INFO: Writing logfile for K1, replicate 1. Please wait...
INFO: Writing logfile for K2, replicate 1. Please wait...
INFO: Writing logfile for K3, replicate 1. Please wait...
INFO: Writing logfile for K4, replicate 1. Please wait...
INFO: Writing logfile for K5, replicate 1. Please wait...
INFO: Writing logfile for K6, replicate 1. Please wait...
INFO: Writing logfile for K7, replicate 1. Please wait...
INFO: Writing logfile for K8, replicate 1. Please wait...
INFO:
==============================

INFO: All 8 jobs finished successfully.
/home/saraema/.local/lib/python3.5/site-packages/structure_threader/wrappers/maverick_wrapper.py:335: RuntimeWarning:

overflow encountered in exp

/home/saraema/.local/lib/python3.5/site-packages/structure_threader/wrappers/maverick_wrapper.py:343: RuntimeWarning:

invalid value encountered in true_divide

/home/saraema/.local/lib/python3.5/site-packages/numpy/lib/function_base.py:4274: RuntimeWarning:

Invalid value encountered in percentile

Traceback (most recent call last):
  File "/home/saraema/.local/bin/structure_threader", line 11, in <module>
    sys.exit(main())
  File "/home/saraema/.local/lib/python3.5/site-packages/structure_threader/structure_threader.py", line 328, in main
    full_run(arg)
  File "/home/saraema/.local/lib/python3.5/site-packages/structure_threader/structure_threader.py", line 291, in full_run
    create_plts(wrapped_prog, bestk, arg)
  File "/home/saraema/.local/lib/python3.5/site-packages/structure_threader/structure_threader.py", line 214, in create_plts
    indfile=arg.indfile, bw=arg.blacknwhite, use_ind=arg.use_ind)
  File "/home/saraema/.local/lib/python3.5/site-packages/structure_threader/plotter/structplot.py", line 998, in main
    klist.plotk([k], outdir)
  File "/home/saraema/.local/lib/python3.5/site-packages/structure_threader/plotter/structplot.py", line 831, in plotk
    pdiv = plot(fig, include_plotlyjs=False, output_type='div')
  File "/home/saraema/.local/lib/python3.5/site-packages/plotly/offline/offline.py", line 469, in plot
    '100%', '100%', global_requirejs=False)
  File "/home/saraema/.local/lib/python3.5/site-packages/plotly/offline/offline.py", line 161, in _plot_html
    figure_or_data, validate
  File "/home/saraema/.local/lib/python3.5/site-packages/plotly/tools.py", line 1398, in return_figure_from_figure_or_data
    "Empty data list found. Make sure that you populated the "
plotly.exceptions.PlotlyEmptyDataError: Empty data list found. Make sure that you populated the list of data objects you're sending and try again.
Questions? Visit support.plot.ly

This may be more widespread than I thought out at first.

StuntsPT commented 6 years ago

@ODiogoSilva , you are the plotly.py expert. Can you please take a quick look? Thanks!

ODiogoSilva commented 6 years ago

I also could not reproduce the issues, at least when generating the plot directly from the output files. However, your data set file @mthon seems to have truncated sample names and there are 4 samples with the same CA-NOP_2CO- name and 2 with P_7565-072-. I'm not sure whether these sample names were also truncated in the ind/pop file, and there's where the issue may lie.

StuntsPT commented 2 years ago

Closing due to inactivity.