windows+python3.7环境下安装wordcloud,生成中英文词云所遇到的问题

最近做大数据作业,需要分析数据,临时安装wordcloud来处理,遇到了一些问题,及解决,这里汇总一下
打开命令窗口shift+右键

-->pip install  wordcloud   

出错,需要下载word_cloud包,解压后,在解压文件下打开命令窗口
输入-->python setup.py install
这时会出现
error: Microsoft Visual C++ 14.0 is required. Get it with “Microsoft Visual C++ Build Tools”: 。。。。的错误,他有给出一个网站可以下载Visual C++ 2015 Build Tools,首先我打开网站是404错误,当然也可以通过其他途径进行下载,但正因为这个错误,我在网上找到一个更好的方法下载对应的.whl文件,先检查自己的Python版本,我安装的是wordcloud-1.5.0-cp37-cp37m-win_amd64.whl,我的是python37 ,64位的,这里只和Python版本有关,和你的操作系统无关哦。

接下回到桌面,打开命令窗口,-->pip install wheel
很荣幸,又出错了No module named pip
这时候博客大神们出来了
-->python -m ensure pip

-->sudo easy_install pip

解决完了,继续安装,安装完wheel后,安装.whl文件,命令窗口找到你的.whl文件
-->pip install wordcloud-1.5.0-cp37-cp37m-win_amd64.whl,安装完成
就开始了欣喜的测试,此时我依旧在桌面的命令窗口中进行的,我的参考

-->python 
-》》》from wordcloud import WordCloud

测试代码,

from wordcloud import WordCloud

f = open(u'D:\\PythonStudio\\WORK\\Demo1\\test.txt','r').read()

wordcloud = WordCloud(background_color="black",width=1000, height=860, margin=2).generate(f)

这里后续还有代码,参考上面的链接,因为我这里出错,就没粘出来
报错:no module named ‘matplotlib’

解决:依旧桌面打开命令行
大神的方法需要看图的,进去看一下吧
-->python -m pip install -U pip setuptools 成功后

-->python -m pip install matplotlib   

然后进入Python脚本,输入import matplotlib确定不出错,就可以开始你的工程了。(PS:大神的方法链接中有,自己是试一下反正我没问题,)下面就开始我的中英文词云生成了:

#coding=utf8                                          # Python3.0+以后,可写可不写。

from wordcloud import WordCloud, ImageColorGenerator  # 引入词云WordCloud

import jieba                                          # 引入分词的词典
import matplotlib.pyplot as plt                       # 制图包, as作用是重命名长度大的程序,方便引用写码


text = open('test2.txt','r',encoding='utf-8').read()
ls = []
words = jieba.lcut(text)
counts = {}
for word in words:
    ls.append(word)
    if len(word) == 1:
        continue
    else:
        counts[word] = counts.get(word, 0) + 1



items = list(counts.items())
items.sort(key=lambda x: x[1], reverse=True)
for i in range(20):
    word, count = items[i]
    print("{:<10}{:>5}".format(word, count))
cut_text = ' '.join(jieba.cut(text))                   # 让jieba把文本进行分词,从而词云显示“词组”而不是“句子“”。并重新命名为cut_text,以示区别。




wordcloud = WordCloud(

    background_color='white',                          # 默认为图片背景为黑色,英文White表示输出的词云图片背景为白色。
    scale=15,                                           # 默认之为1。可以理解为生成的图片像素密度值,值越大,图片密度越高,越清楚。
    font_path='c:\windows\Fonts\simhei.ttf',           # 写明地址,指定文字的类型为中文黑体。
).generate(cut_text)



# 运行成功后显示图片
plt.imshow(wordcloud, interpolation='bilinear')        # Bilinear:双线性插值算法,用来缩放显示图片。缩放就是把原图片的像素应用坐标系统,用坐标表示,双线性插值算法就是把一个坐标不是整数的点的坐标,用最近的四个整数点坐标指示出来;

plt.axis('off')                                        # 不显示坐标尺度
plt.show()

参考大神代码,满心欢喜开始测试,还真是错误不断,

针对UnicodeDecodeError: 'utf-8' codec can't decode byte问题

text = open('test2.txt','r',encoding='utf-8').read()改为
text = open('D:\\tts.txt','r',encoding='gbk').read(),

继续,没有jieba (词典),继续安装,jieba-0.39.zip解压后,回到桌面命令行,

-->D:     (你的装的路径)
-->   cd D:\(路径)\jieba-0.39
。。。。。jieba-0.39>  python setup.py install

终于完成了,中英文都可以了,试一下吧。(windows+python3.7环境下安装wordcloud,生成中英文词云所遇到的问题_第1张图片

你可能感兴趣的:(工具)