第9行: |
第9行: |
| ====== 获取遮罩图:numpy ====== | | ====== 获取遮罩图:numpy ====== |
| [https://amueller.github.io/word_cloud/auto_examples/colored.html demo] | | [https://amueller.github.io/word_cloud/auto_examples/colored.html demo] |
| + | |
| + | import numpy as np |
| + | alice_mask = np.array(Image.open("xxx.png")) |
| + | |
| + | 或 |
| + | |
| + | from scipy.misc import imread |
| + | alice_mask = imread('xxx.png') |
| + | |
| + | |
| + | |
| + | |
| + | 如果报:'''_tkinter.TclError: no display name and no $DISPLAY environment variable''' |
| + | |
| + | 在“import matplotlib.pyplot as plt”之前,加入: |
| + | |
| + | <nowiki> |
| + | import matplotlib as mpl |
| + | mpl.use('Agg') |
| + | </nowiki> |
| + | |
| + | |
| + | |
| + | 实例: |
| + | <nowiki> |
| + | #!/usr/bin/python |
| + | # -*- coding: utf-8 -*- |
| + | import wordcloud |
| + | from wordcloud import WordCloud |
| + | import jieba |
| + | # from PIL import Image |
| + | # import numpy as np |
| + | |
| + | import matplotlib as mpl |
| + | mpl.use('Agg') |
| + | |
| + | import matplotlib.pyplot as plt |
| + | from scipy.misc import imread |
| + | |
| + | with open('论语.txt', 'r') as f: |
| + | text = " ".join(jieba.cut(f.read())) |
| + | # alice_mask = np.array(Image.open("遮罩图.png")) |
| + | alice_mask = imread('遮罩图.png') |
| + | |
| + | wordCloud = WordCloud(font_path='msyh.ttf',background_color='white', max_words=2000, max_font_size=80, random_state=40, mask=alice_mask) |
| + | wordCloud.generate(text) |
| + | plt.imshow(wordCloud, interpolation='bilinear') |
| + | plt.axis("off") |
| + | plt.show() |
| + | |
| + | # plt.savefig('path to output.png') |
| + | wordCloud.to_file('path to output.png') |
| + | </nowiki> |