2014-10-17 18 views
13

İthalat süresi kabul edilemez uzun:Son derece yavaş ithalat

from matplotlib import pylab as plt --> 3.0124739 secs 

Bu açıkça Adobe Font Metrics. için bazı arayüz afm.py olmanın sorunu gösterir Cprofile, çıkışıdır. Matplotlib sürümü 1.4.0 - Ubuntu 14.04

  5994612 function calls (5992123 primitive calls) in 4.702 seconds 

    Ordered by: internal time 

    ncalls tottime percall cumtime percall filename:lineno(function) 
     182 1.589 0.009 2.372 0.013 afm.py:220(_parse_kern_pairs) 
     215 0.746 0.003 1.420 0.007 afm.py:180(_parse_char_metrics) 
    1297990 0.410 0.000 0.410 0.000 {method 'split' of 'str' objects} 
    839978 0.288 0.000 0.288 0.000 {method 'readline' of 'file' objects} 
     2 0.254 0.127 4.185 2.093 font_manager.py:544(createFontList) 
    843308 0.170 0.000 0.170 0.000 {method 'startswith' of 'str' objects} 
    114276 0.168 0.000 0.205 0.000 afm.py:72(_to_list_of_floats) 
1563800  0.125 0.000 0.125 0.000 {len} 
    839220 0.117 0.000 0.117 0.000 {method 'rstrip' of 'str' objects} 
    115290 0.116 0.000 0.119 0.000 {method 'decode' of 'str' objects} 
    117775 0.086 0.000 0.086 0.000 afm.py:56(_to_int) 
     20 0.061 0.003 0.061 0.003 {built-in method poll} 
     520 0.040 0.000 0.040 0.000 {method 'get_sfnt' of 'FT2Font' objects} 
    6910 0.036 0.000 0.036 0.000 {posix.stat} 
    3372 0.025 0.000 0.038 0.000 posixpath.py:336(normpath) 

Düzeltme/devre dışı bırakma hakkında herhangi bir fikriniz var mı?

DÜZENLEME:

1.3.1 için geri alınıyor Günümü kurtardı. Koşu süresi şimdi 0.2 sn.

+0

Geri dönüşün neden işe yaradığı hakkında bir fikriniz var mı? Matplotlib geliştiricileriyle bir hata raporu mu yaptınız? – JoErNanO

+0

@JoErNanO, hiç bir fikrim yok, özür dilerim ve evet burada bir hata raporu gönderdim: https://github.com/matplotlib/matplotlib/issues/3655 – memecs

+0

aslında çoğaltamaz, ilk kez yükleme yaptıktan sonra bir süre aldı ama şimdi anında içe aktarılıyor. matplotlib 1.4.0 ubuntu 14.04 –

cevap

14

Aynı problem vardı. Ben daha yeni bir sürüme matplotlib yükselttiğinizde bunun gerçekleştiğini anladım. Yazı tipi önbellek dosyası yeni sürümle uyumlu değil, ancak görünüşte yeniden oluşturulmuyor. Bunun yerine, her seferinde yazı tipi listesi oluşturulur. Çözüm, matplotlib önbellek dizinini silmek (benim durumumda ~/.cache/matplotlib)

+0

Bir Windows pip yüklemesinde önbellek dizini nedir? DÜZENLEME: Ah, ~ ile şu anki dizini kastediyorsunuz (Python dir gibi)? – Gustavo6046

İlgili konular