2017-02-07 33 views
16

Miniconda sanal ortamda Python 3 üzerinde matplotlib sürüm 2.0.0 kullanıyorum. Ben root ayrıcalıklarına sahip olmayan bir unix bilimsel bilgi işlem kümesinde çalışıyorum. Genellikle bir ipython dizüstü bilgisayar üzerinden python kodu yürütüyorum. Ben gibi temel bir komut yaparsanız: Ben istiyorum Matplotlib temel yazı tiplerini bulamıyor

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])) 

bir Times New Roman yazı tipini kullanmak mümkün ancak bu bile Yazı önbellek dosyası silme sonra için:

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

bir hata mesajı almak

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

komutları:

mpl.rcParams['font.family'] = ['serif'] 
mpl.rcParams['font.serif'] = ['Times New Roman'] 
Ben buradan bulabilirsiniz (fontList.py3k.cache)

'un hiçbir etkisi yoktur, yukarıdakiyle aynı hatayı alıyorum. true type fontları dizini:

path_to_miniconda/miniconda3/ENV/conda34/lib/python3.4/site paketleri/matplotlib/mpl-veri/yazı/ttf sadece o 40 yazı tipleri/

Tür: DejaVuSerif, DejaVuSans, STIX, cmb, cmt, cmy

Neler olup bittiğini ve nasıl ek yazı ekleyebileceğimi biliyor musunuz? Teşekkürler! Benim için

+0

Aynı problem vardı. Ipucu fm.get_cachedir() için teşekkür ederim, yanlış önbelleği siliyordum ve şimdi çalışıyor! Teşekkür ederiz :) –

cevap

7

Bu çalışma ::

$ sudo apt-get install msttcorefonts -qq 
+0

Docker kullanıcılarının lisans sözleşmesini otomatik olarak kabul etmesi gerekecek: 'RUN echo ttf-mscorefonts-installer msttcorefonts/accepted-mscorefonts-eula select true | debconf-set-selection'' RUN apt-get install -y ttf-mscorefonts-installer' –

9

Ben Ubuntu Xenial 64-bit çalışan bir Serseri VY'de bu aynı sorun vardı. Zaten yüklü olan kaç font olursa olsun, matplotlib "sistem" font adı "sans-serif" ile ilgili bir sorun yaşıyordu. matplotlib önbellek dizini temizlenmesi sudo apt install font-manager

  • : rm ~/.cache/matplotlib -fr
  • yeniden başlatma Jupyter font-müdür takma Jupyter
  • Durdurma

    • : Ben tarafından düzelttim.

    Artık sans-serif ile ilgili hata mesajları.

  • İlgili konular