设为首页收藏本站

Crossin的编程教室

 找回密码
 立即加入
查看: 5695|回复: 6
打印 上一主题 下一主题

求助:wordcloud报错

[复制链接]

2

主题

0

好友

34

积分

新手上路

Rank: 1

跳转到指定楼层
楼主
发表于 2018-5-18 16:13:59 |只看该作者 |正序浏览
版主你好, 按‘【编程课堂】词云 wordcloud’ 原文 代码,只改了读取txt及png文件地址,结果就出现以下错误:

输入:

# -*- coding: utf-8 -*-
from scipy.misc import imread
import matplotlib.pyplot as plt
from wordcloud import WordCloud
import jieba
from collections import Counter
# 读入 西游记 txt 文件,windows 下过滤编码错误
text = open('D:/西游记.txt',encoding='utf-8',errors='ignore').read()
# 使用 jieba 分词
text_jieba = list(jieba.cut(text))
# 使用 counter 做词频统计,选取出现频率前 100 的词汇
c = Counter(text_jieba)
common_c = c.most_common(100)
# 读入图片
bg_pic = imread('D:/Anne_Hathaway.png')
# 配置词云参数
wc = WordCloud(
    # 设置字体
    font_path = '李旭科书法1.4.ttf',
    # 设置背景色
    background_color='white',
    # 允许最大词汇
    max_words=200,
    # 词云形状
    mask=bg_pic,
    # 最大号字体
    max_font_size=100,
)
# 生成词云
wc.generate_from_frequencies(dict(common_c))
# 生成图片并显示
plt.figure()
plt.imshow(wc)
plt.axis('off')
plt.show()
# 保存图片
wc.to_file('anne.jpg')




输出:


runfile('C:/Users/usb/.spyder-py3/temp.py', wdir='C:/Users/usb/.spyder-py3')
Traceback (most recent call last):

  File "<ipython-input-4-4cdbcda25942>", line 1, in <module>
    runfile('C:/Users/usb/.spyder-py3/temp.py', wdir='C:/Users/usb/.spyder-py3')

  File "d:\Users\usb\Anaconda3\lib\site-packages\spyder\utils\site\sitecustomize.py", line 880, in runfile
    execfile(filename, namespace)

  File "d:\Users\usb\Anaconda3\lib\site-packages\spyder\utils\site\sitecustomize.py", line 102, in execfile
    exec(compile(f.read(), filename, 'exec'), namespace)

  File "C:/Users/usb/.spyder-py3/temp.py", line 39, in <module>
    wc.generate_from_frequencies(dict(common_c))

  File "d:\Users\usb\Anaconda3\lib\site-packages\wordcloud\wordcloud.py", line 439, in generate_from_frequencies
    font = ImageFont.truetype(self.font_path, font_size)

  File "d:\Users\usb\Anaconda3\lib\site-packages\PIL\ImageFont.py", line 238, in truetype
    return FreeTypeFont(font, size, index, encoding)

  File "d:\Users\usb\Anaconda3\lib\site-packages\PIL\ImageFont.py", line 127, in __init__
    self.font = core.getfont(font, size, index, en
coding)

OSError: cannot open resource

用的是spyder编译器,python3.6环境。


网上没找到对应的情况,也许搜索方法不对 ?


麻烦帮忙看看问题出在哪儿,谢谢!


回复

使用道具 举报

2

主题

0

好友

34

积分

新手上路

Rank: 1

7#
发表于 2018-5-19 22:52:55 |只看该作者
最后反馈:
下载了十多个字体尝试依然没有成功,怀疑是python版本(3.61)/汉字兼容/字体兼容方面的问题。
暂时不去深究了,谢谢版主!


回复

使用道具 举报

2

主题

0

好友

34

积分

新手上路

Rank: 1

6#
发表于 2018-5-19 19:32:03 |只看该作者
OK,一会儿多下载几个,都试着用用看看。谢谢啦!
回复

使用道具 举报

174

主题

45

好友

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

5#
发表于 2018-5-19 17:31:14 |只看该作者
Atlist 发表于 2018-5-19 10:16
刚下载了一个宋体,图片是出来了,不过好像是乱码

那还是字体文件不大对
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

2

主题

0

好友

34

积分

新手上路

Rank: 1

地板
发表于 2018-5-19 10:16:37 |只看该作者
刚下载了一个宋体,图片是出来了,不过好像是乱码

anne.jpg (16.84 KB, 下载次数: 382)

anne.jpg

回复

使用道具 举报

2

主题

0

好友

34

积分

新手上路

Rank: 1

板凳
发表于 2018-5-18 22:26:05 |只看该作者
噢噢,这个字体文件是哪儿找的?
回复

使用道具 举报

174

主题

45

好友

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

沙发
发表于 2018-5-18 21:52:53 |只看该作者
字体文件放目录下了吗,文件改成英文名试试
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即加入

QQ|手机版|Archiver|Crossin的编程教室 ( 苏ICP备15063769号  

GMT+8, 2024-11-25 16:31 , Processed in 0.016671 second(s), 26 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部