2013-01-23 23 views
5

के साथ matplotlib का उपयोग कर त्रुटि। मैक ओएस एक्स 10.7.5 पर अपाचे के माध्यम से एक Django ऐप में matplotlib का उपयोग कर रहा हूं, लेकिन मैं इसे मेरे लिए एक आकृति प्लॉट नहीं कर सकता। मैं आयात matplotlib.pyplot as plt, और मेरे विचार में लाइन आयात कर लें,setugid() apache और django

plt.plot(x, y) 

(x और y NumPy सरणी हैं) त्रुटि

2013-01-23 16:39:16.731 httpd[381:203] The application with bundle ID (null) is running setugid(), which is not allowed. 
मेरी अपाचे error_log में

खड़ी कर रहा है। मुझे डर है कि मुझे नहीं पता कि setugid() क्या है, या इसे मेरे ऐप के लिए चलाने की अनुमति कैसे है। मेरा $MPLCONFIGDIR/tmp/.mplconfig पर सेट किया गया है और अपाचे के रूप में उपयोगकर्ता _www ने कुछ खाली निर्देशिकाएं लिखी हैं, इसलिए यह ठीक काम कर रहा है। क्या कोई मुझे एक सुराग दे सकता है?

अद्यतन: अगर मैं

from matplotlib.backends.backend_agg import FigureCanvasAgg as FigureCanvas 
from matplotlib.figure import Figure 

और एक आंकड़ा है, subplot और कुल्हाड़ियों (पूरे ताम-झाम) की स्थापना, मैं() एक त्रुटि ... क्या अतिरिक्त अनुमतियों की जरूरत pyplot है बिना savefig कर सकते हैं?

+0

अधिक जानकारी [यहां] (https://blogs.oracle.com/dns/entry/understanding_the_authorization_framework_on)। ऐसा लगता है कि ओएस एक्स पर एक सुरक्षा सेटिंग इसे रोक रही है, और त्वरित फिक्स रूट के रूप में अपाचे को चलाने के लिए प्रतीत होता है। – tiago

+0

उत्तर टियागो के लिए धन्यवाद। रूट पूरी तरह बुद्धिमान के रूप में apache चल रहा है, हालांकि? – xnx

+0

लिनक्स/यूनिक्स अपाचे में आमतौर पर रूट के रूप में शुरू किया जाता है लेकिन उपयोगकर्ता 'कोई नहीं' के रूप में चलता है। यदि यह बुद्धिमान है या नहीं, तो मुझे आपके विशेष मामले में नहीं पता है। – tiago

उत्तर

1

agg बैकएंड का उपयोग करने के बाद matplotlib आयात करने Sierra

import matplotlib as mpl 

mpl.use('agg') 
0

में एक Flask app में setugid() त्रुटि OS X Server के तहत चल रहा से छुटकारा मिला तुम भी बैकएंड विन्यास विश्व स्तर पर अपने सिस्टम के लिए ~/.matplotlib/matplotlibrc में की तरह जोड़ सकते हैं:

backend: TkAgg 

इससे आपकी समस्या भी हल हो जाएगी। यदि आपके पास matplotlibrc नहीं है, तो बस एक बनाएं।

 संबंधित मुद्दे

  • कोई संबंधित समस्या नहीं^_^