python - मैं पायथन में matplotlib में 'बैकएंड' कैसे सेट कर सकता हूं?




linux graphics (4)

आपका वर्तमान चयनित बैकएंड, 'एजीजी' शो () का समर्थन नहीं करता है।

AGG बैकएंड फ़ाइल में लिखने के लिए है, खिड़की में प्रतिपादन के लिए नहीं। Matplotlib वेबसाइट पर बैकएंड अकसर किये गए सवाल देखें।

ImportError: _backend_gdk नामक कोई मॉड्यूल नहीं

दूसरी त्रुटि के लिए, शायद आपके matplotlib वितरण को GTK समर्थन के साथ संकलित नहीं किया गया है, या आप PyGTK पैकेज को याद करते हैं। इसे स्थापित करने का प्रयास करें।

क्या आप show() विधि को टर्मिनल या एप्लिकेशन के अंदर कॉल करते show() जिसके पास ग्राफ़िकल वातावरण तक पहुंच है?

इस आदेश में अन्य जीयूआई बैकएंड्स आज़माएं:

  • TkAgg
  • WX
  • QTAgg
  • QT4Agg

मैं matplotlib का नया उपयोगकर्ता हूं, मेरा मंच उबंटू 10.04 पायथन 2.6.5 है

यह मेरा कोड है

import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt 
plt.plot([1,2,3])

त्रुटि है:

/usr/local/lib/python2.6/dist-packages/matplotlib/backends/__init__.py:41: UserWarning: 
Your currently selected backend, 'agg' does not support show().
Please select a GUI backend in your matplotlibrc file ('/usr/local/lib/python2.6/dist-packages/matplotlib/mpl-data/matplotlibrc')
or with matplotlib.use()
  (backend, matplotlib.matplotlib_fname()))
  • मैंने एंटी-अनाज ज्यामिति लाइब्रेरी apt-get install libagg लेकिन यह काम नहीं करता है।
  • मैंने 'जीटीके' और 'TkAgg' जैसे बैकएंड के अन्य तर्क का उपयोग करने की कोशिश की।
  • मैंने python-gtk2-dev पैकेज स्थापित किया है, लेकिन फिर भी त्रुटि नीचे है।
  • क्या कोई मुझे निष्पादन योग्य बैकएंड तर्क और इसकी निर्भरता लाइब्रेरी बता सकता है?

यहां त्रुटि है:

>>> matplotlib.use('GTK')
>>> import matplotlib.pyplot as plt
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python2.6/dist-packages/matplotlib/pyplot.py", line 95, in <module>
    new_figure_manager, draw_if_interactive, show = pylab_setup()
  File "/usr/local/lib/python2.6/dist-packages/matplotlib/backends/__init__.py", line 25, in pylab_setup
    globals(),locals(),[backend_name])
  File "/usr/local/lib/python2.6/dist-packages/matplotlib/backends/backend_gtk.py", line 28, in <module>
    from matplotlib.backends.backend_gdk import RendererGDK, FigureCanvasGDK 
  File "/usr/local/lib/python2.6/dist-packages/matplotlib/backends/backend_gdk.py", line 29, in <module>
    from matplotlib.backends._backend_gdk import pixbuf_get_pixels_array
ImportError: No module named _backend_gdk

आपके द्वारा पोस्ट की गई त्रुटियां असंबद्ध हैं। सबसे पहले आपको बैकएंड चुनने का कारण है जो इंटरैक्टिव उपयोग, यानी एजीजी के लिए नहीं है। आप स्क्रिप्ट में प्लॉट्स की पीढ़ी के लिए उन लोगों का उपयोग (और उपयोग करना चाहिए) जिन्हें उपयोगकर्ता इंटरैक्शन की आवश्यकता नहीं है।

यदि आप एक इंटरैक्टिव प्रयोगशाला-पर्यावरण चाहते हैं, जैसे कि मैटलैब / पिलैब में, आप स्पष्ट रूप से एक बैकएंड सहायक गुई उपयोग आयात करेंगे, जैसे कि क्यूटी 4 एएजी (क्यूटी और एजीजी की जरूरत है), जीटीकेएजी (जीटीके एजीजी) या डब्ल्यूएक्सएग (डब्ल्यूएक्सविड्जेट्स एंड एजीजी)।

मैं WXAgg का उपयोग करने की कोशिश करके शुरू करूंगा, इसके अलावा यह वास्तव में इस बात पर निर्भर करता है कि आपने पाइथन और matplotlib (स्रोत, पैकेज इत्यादि) कैसे स्थापित किया है।


एफवाईआई, मैंने पाया कि मुझे पहले पाइथन आयात आदेश में matplotlib.use('Agg') डालने की आवश्यकता है। मैं जो कर रहा था उसके लिए (यूनिट परीक्षण हेडलेस होने की आवश्यकता थी) जिसका मतलब था

import matplotlib
matplotlib.use('Agg')

मेरे मास्टर टेस्ट स्क्रिप्ट के शीर्ष पर। मुझे किसी अन्य फाइल को छूने की ज़रूरत नहीं थी।


मैंने अपने स्वयं के VIRTUAL_ENV में पाइथन, numpy, scipy, matplotlib संकलित करने का प्रयास करते समय इसे मारा

Matplotlib स्थापित करने से पहले आपको बनाना और इंस्टॉल करना होगा: pygobject pycairo pygtk

और फिर matplotlib के साथ ऐसा करें: 'gtkong' बैकएंड सक्षम होने पर 'python ./setup.py build --help' के साथ matplotlib चेक बनाने से पहले। फिर निर्माण और स्थापित करें

निर्यात करने से पहले PKG_CONFIG_PATH = $ VIRTUAL_ENV / lib / pkgconfig







matplotlib