2014-11-04 132 views
2

我在ipython筆記本上有一個代碼,我嘗試創建一個wordcloud,但出現錯誤。從我能看到的,錯誤與別的東西,而不是我的代碼(一些與字體?)IOError:無法打開資源

--------------------------------------------------------------------------- 
IOError         Traceback (most recent call last) 
<ipython-input-71-795b92e06f22> in <module>() 
    4 # print x[0], x[1] 
    5 
----> 6 genWordCloud(list_of_tuples) 

<ipython-input-70-55c34fb2c915> in genWordCloud(filename) 
15  count = filename 
16  #words = myWC.fit_words(count, width=500, height=500) 
---> 17  words = myWC.fit_words(count) 
18  myWC.draw(words, pngPath + os.path.splitext(filename)[0] + '.png', width=500, height=500, scale=1) 
19  return 'Cloud generated for {}'.format(filename) 

/usr/local/lib/python2.7/dist-packages/wordcloud/wordcloud.pyc in fit_words(self, words) 
177    while True: 
178     # try to find a position 
--> 179     font = ImageFont.truetype(self.font_path, font_size) 
180     # transpose font optionally 
181     if random_state.random() < self.prefer_horizontal: 

/usr/local/lib/python2.7/dist-packages/PIL/ImageFont.pyc in truetype(font, size, index, encoding, filename) 
238 
239  try: 
--> 240   return FreeTypeFont(font, size, index, encoding) 
241  except IOError: 
242   if sys.platform == "win32": 

/usr/local/lib/python2.7/dist-packages/PIL/ImageFont.pyc in __init__(self, font, size, index, encoding, file) 
135 
136   if isPath(font): 
--> 137    self.font = core.getfont(font, size, index, encoding) 
138   else: 
139    self.font_bytes = font.read() 

IOError: cannot open resource 

我不太確定爲如何解釋這一點。看起來像我正在使用的課程需要一些字體,並且某些字體文件會發生一些情況。任何有識之士將理解

我用這作爲基礎:http://99projects.co/reports/p05-word-frequency/

回答

1

你需要在你的wordcloud對象指定一個font_path。 Amueller,作者the library在他的最新版本中改變了很多東西。我根據這些變化更新我的項目,你可以check it here

+5

我一直在尋找你寫的關於處理庫變化的東西,但是這個網址不再工作。哦,諷刺的是^^ – 2015-06-19 20:32:58

1

在Mac OS X中,我得到了錯誤:

IOError: cannot open resource 

我的文件「wordcloud.py」

改變了FONT_PATH
FONT_PATH = os.environ.get("FONT_PATH", "/Library/Fonts/Times New Roman.ttf") 

錯誤消失。

相關問題