Wordcloud:字体越大,tf-idf 值越小
Wordcloud: Bigger font for lower tf-idf values
我正在尝试为 tf-idf 值形成词云:
下面是数据帧中的 tf-idf 值。当我尝试形成词云时,具有较高值的值,在本例中 "seat - 2.57" 以最大字体显示。但我需要反过来。 "Nice - 2.088" 使用更大的字体,因为它更重要。
[[u'nice' 2.0886619578149417]
[u'owl' 2.2729656758128876]
[u'person' 2.386294361119891]
[u'read' 2.455287232606842]
[u'seat' 2.5766480896111092]]
代码如下:
print(top_10.values)
d = {}
for a, x in top_10.values:
d[a] = x
import matplotlib.pyplot as plt
from wordcloud import WordCloud
wordcloud = WordCloud()
wordcloud.generate_from_frequencies(frequencies=d)
plt.figure( figsize=(20,10) )
plt.imshow(wordcloud, interpolation="bilinear")
plt.axis("off")
plt.show()
你可以使用不同的频率来提供给词云。
例如
d[a] = 3-x
或
d[a] = 1./x
完整示例:
top_10 = lambda :""
top_10.values = [[u'nice', 2.0886619578149417],
[u'owl', 2.2729656758128876],
[u'person', 2.386294361119891],
[u'read', 2.455287232606842],
[u'seat', 2.5766480896111092]]
d = {}
for a, x in top_10.values:
d[a] = 3-x
import matplotlib.pyplot as plt
from wordcloud import WordCloud
wordcloud = WordCloud()
wordcloud.generate_from_frequencies(frequencies=d)
plt.figure( figsize=(5,3) )
plt.imshow(wordcloud, interpolation="bilinear")
plt.axis("off")
plt.show()
我正在尝试为 tf-idf 值形成词云:
下面是数据帧中的 tf-idf 值。当我尝试形成词云时,具有较高值的值,在本例中 "seat - 2.57" 以最大字体显示。但我需要反过来。 "Nice - 2.088" 使用更大的字体,因为它更重要。
[[u'nice' 2.0886619578149417]
[u'owl' 2.2729656758128876]
[u'person' 2.386294361119891]
[u'read' 2.455287232606842]
[u'seat' 2.5766480896111092]]
代码如下:
print(top_10.values)
d = {}
for a, x in top_10.values:
d[a] = x
import matplotlib.pyplot as plt
from wordcloud import WordCloud
wordcloud = WordCloud()
wordcloud.generate_from_frequencies(frequencies=d)
plt.figure( figsize=(20,10) )
plt.imshow(wordcloud, interpolation="bilinear")
plt.axis("off")
plt.show()
你可以使用不同的频率来提供给词云。
例如
d[a] = 3-x
或
d[a] = 1./x
完整示例:
top_10 = lambda :""
top_10.values = [[u'nice', 2.0886619578149417],
[u'owl', 2.2729656758128876],
[u'person', 2.386294361119891],
[u'read', 2.455287232606842],
[u'seat', 2.5766480896111092]]
d = {}
for a, x in top_10.values:
d[a] = 3-x
import matplotlib.pyplot as plt
from wordcloud import WordCloud
wordcloud = WordCloud()
wordcloud.generate_from_frequencies(frequencies=d)
plt.figure( figsize=(5,3) )
plt.imshow(wordcloud, interpolation="bilinear")
plt.axis("off")
plt.show()