2017-02-07 14 views
16

मैं एक मिनीकॉन्डा आभासी वातावरण में पाइथन 3 पर matplotlib संस्करण 2.0.0 का उपयोग कर रहा हूं। मैं एक यूनिक्स वैज्ञानिक कंप्यूटिंग क्लस्टर पर काम कर रहा हूं जहां मेरे पास रूट विशेषाधिकार नहीं हैं। मैं आम तौर पर एक ipython नोटबुक के माध्यम से अजगर कोड निष्पादित कर रहा हूँ।Matplotlib मूल फोंट नहीं ढूंढ सकता

path_to_miniconda/miniconda3/envs/conda34/lib/python3.4/site- 
packages/matplotlib/font_manager.py:1297: UserWarning: findfont: Font family 
['sans-serif'] not found. Falling back to DejaVu Sans 
(prop.get_family(), self.defaultFamily[fontext])) 

मैं चाहते हैं लेकिन फ़ॉन्ट कैश फ़ाइल हटाने के बाद भी एक Times New Roman फ़ॉन्ट का उपयोग करने में सक्षम हो: मैं एक त्रुटि संदेश मिलता

import matplotlib.pyplot as plt 
plt.scatter([1,5], [1,5]) 

: यदि मैं इस तरह के रूप में एक बुनियादी आदेश कर (fontList.py3k.cache) जो मैं यहाँ से लगता है:

import matplotlib as mpl 
fm = mpl.font_manager 
fm.get_cachedir() 

कमांड:

mpl.rcParams['font.family'] = ['serif'] 
mpl.rcParams['font.serif'] = ['Times New Roman'] 

का कोई प्रभाव नहीं है, मुझे ऊपर की तरह ही त्रुटि मिलती है। सच प्रकार फोंट निर्देशिका:

path_to_miniconda/miniconda3/envs/conda34/lib/python3.4/साइट-संकुल/matplotlib/एमपीएल-डेटा/फोंट/ttf/

केवल की उस में 40 फोंट है टाइप: DejaVuSerif, DejaVuSans, STIX, cmb, cmt, cmy

कोई विचार क्या हो सकता है और मैं अतिरिक्त फ़ॉन्ट कैसे जोड़ सकता हूं? धन्यवाद!

+0

मुझे एक ही समस्या थी। आपकी टिप fm.get_cachedir() के लिए धन्यवाद, मैं गलत कैश मिटा रहा था और अब यह काम करता है! धन्यवाद :) –

उत्तर

7

मेरे लिए यह काम ::

$ sudo apt-get install msttcorefonts -qq 
+0

डॉकर उपयोगकर्ताओं को स्वचालित रूप से लाइसेंस समझौते को स्वीकार करने की आवश्यकता होगी: 'रन echo ttf-mscorefonts-installer msttcorefonts/accept-mscorefonts-eula सही चुनें। debconf-set-selects 'रन apt-get install -y ttf-mscorefonts-installer' –

9

मैं उबंटू Xenial 64-बिट चला रहे Vagrant वी एम पर इस सटीक एक ही समस्या थी। इससे कोई फर्क नहीं पड़ता कि मैंने पहले से कितने फोंट स्थापित किए हैं, मैटलप्लिब को "सिस्टम" फ़ॉन्ट नाम "सैन्स-सेरिफ़" के साथ समस्या हो रही थी।

  • Jupyter
  • रोक स्थापित कर रहा है font-प्रबंधक: sudo apt install font-manager
  • matplotlib कैश निर्देशिका सफाई: rm ~/.cache/matplotlib -fr
  • पुन: आरंभ करना Jupyter मैं द्वारा यह तय की।

sans-serif के बारे में कोई और त्रुटि संदेश नहीं।

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