Работает matplotlib без отображения
Когда запускается matlplotlib (из sumrize_taxa_through_plots.py), я получаю ошибку:
...
raise RuntimeError('Invalid DISPLAY variable')
RuntimeError: Invalid DISPLAY variable
Я видел эту проблему на многих сайтах, решение состоит в том, чтобы изменить пользовательский matplotlirc или глобальный:
backend:qt4agg
в
backend:agg
Я меняю глобальный matplotlibrc.
Теперь, когда я запускаю программу, использую matplotlib, я получаю:
Command returned exit status: 1
Stdout:
Stderr
Traceback (most recent call last):
File "/path/to/python/2.7.6/bin/plot_taxa_summary.py", line 278, in <module>
main()
File "/path/to/python/2.7.6/bin/plot_taxa_summary.py", line 274, in main
resize_nth_label, label_type, include_html_legend)
File "/path/to/python/2.7.6/lib/python2.7/site-packages/qiime/plot_taxa_summary.py", line 1138, in make_all_charts
resize_nth_label, label_type, include_html_legend))
File "/path/to/python/2.7.6/lib/python2.7/site-packages/qiime/plot_taxa_summary.py", line 1073, in get_counts
label_type, include_html_legend))
File "/path/to/python/2.7.6/lib/python2.7/site-packages/qiime/plot_taxa_summary.py", line 861, in make_HTML_table
props={'title': title})
File "/path/to/python/2.7.6/lib/python2.7/site-packages/qiime/plot_taxa_summary.py", line 662, in make_area_bar_chart
background_color, img_abs, generate_image_type, dpi)
File "/path/to/python/2.7.6/lib/python2.7/site-packages/qiime/plot_taxa_summary.py", line 187, in make_legend
shadow=False, fancybox=False)
File "/path/to/python/2.7.6/lib/python2.7/site-packages/matplotlib/figure.py", line 1251, in legend
l = Legend(self, handles, labels, *args, **kwargs)
File "/path/to/python/2.7.6/lib/python2.7/site-packages/matplotlib/legend.py", line 385, in __init__
self._init_legend_box(handles, labels, markerfirst)
File "/path/to/python/2.7.6/lib/python2.7/site-packages/matplotlib/legend.py", line 654, in _init_legend_box
fontsize, handlebox))
File "/path/to/python/2.7.6/lib/python2.7/site-packages/matplotlib/legend_handler.py", line 119, in legend_artist
fontsize, handlebox.get_transform())
File "/path/to/python/2.7.6/lib/python2.7/site-packages/matplotlib/legend_handler.py", line 252, in create_artists
self.update_prop(p, orig_handle, legend)
File "/path/to/python/2.7.6/lib/python2.7/site-packages/matplotlib/legend_handler.py", line 78, in update_prop
legend._set_artist_props(legend_handle)
File "/path/to/python/2.7.6/lib/python2.7/site-packages/matplotlib/legend.py", line 401, in _set_artist_props
a.set_figure(self.figure)
File "/path/to/python/2.7.6/lib/python2.7/site-packages/matplotlib/artist.py", line 640, in set_figure
raise RuntimeError("Can not put single artist in "
RuntimeError: Can not put single artist in more than one figure
Любая идея?
1 ответ
Предлагаем понизить версию Matplotlib, которую вы используете, и использовать что-то вроде 1.4.x
, Смотрите эту проблему в qiime
GitHub репо.