यह समस्या वास्तव में विभिन्न कारणों में से एक जोड़े को हो सकता है: (! से पहले किसी भी अंकन किया जाता है)
डिफ़ॉल्ट फ़ॉन्ट इन ग्लिफ़
आप निम्न का उपयोग कर डिफ़ॉल्ट फ़ॉन्ट बदल सकते हैं शामिल नहीं है
matplotlib.rc('font', family='Arial')
की matplotlib आप ते सेट परिवार होगा कुछ संस्करणों में:
matplotlib.rc('font', **{'sans-serif' : 'Arial',
'family' : 'sans-serif'})
(ध्यान दें कि क्योंकि sans-serif
**{}
वाक्य रचना के अंदर एक हाइफन होता है, यह वास्तव में आवश्यक है।)
पहले आदेश sans-serif
फ़ॉन्ट परिवार में परिवर्तन केवल एक फ़ॉन्ट (मेरे मामले में यह Arial था) को रोकने के लिए, दूसरा डिफ़ॉल्ट फ़ॉन्ट परिवार को sans-serif
पर सेट करता है।
अन्य विकल्प in the documentation शामिल हैं।
आप को अनुचित तरीके से matplotlib में बनाया है/passsed स्ट्रिंग वस्तुओं
यहां तक कि अगर फॉन्ट उचित ग्लिफ़ होता है, यदि आप u
उपयोग करने के लिए Unicode स्थिरांक बनाने के लिए भूल गया, matplotlib इस व्यवहार होगा:
plt.xlabel("Średnia odległość między stacjami wsparcia a modelowaną [km]")
तो तुम u
जोड़ने की जरूरत:
plt.xlabel(u"Średnia odległość między stacjami wsparcia a modelowaną [km]")
एक अन्य कारण है कि आप फ़ाइल के शीर्ष पर एक UTF-8 जादू टिप्पणी लगाना भूल गए (मैंने पढ़ा है कि इस might be the source of the problem):
# -*- coding: utf-8 -*-
स्रोत
2012-06-09 11:07:25
करने के लिए [डॉक्स] अनुसार (http://matplotlib.org/api/artist_api .html # matplotlib.text.Text.set_family), आप सीधे परिवार के बजाय फ़ॉन्ट नाम पास कर सकते हैं। यह मेरे लिए काम करता है: 'matplotlib.rc ('font', family = 'DejaVu Sans')' – Lekensteyn
यह निश्चित रूप से बेहतर वाक्यविन्यास है! अगर मैं वास्तव में किसी तरह के प्राचीन matplotlib संस्करण के लिए असफल था, तो मैं बूढ़ा व्यक्ति छोड़ दूंगा। –