在pyplot中格式化离散数据的x轴

时间:2018-04-02 09:21:34

标签: python python-3.x plot

我有一个我要绘制的元组列表。元组包含单词在文本集合中出现的次数以及出现此次数的单词数。

 freq = [(k, len(list(v))) for k,v in itertools.groupby(sorted(coll.values()))]
plt.bar(range(len(freq)), [val[1] for val in freq])
plt.xticks(range(len(freq)), [val[0] for val in freq])
plt.xticks(rotation=70)
plt.xlabel('Times a word appears in the collection',labelpad=1)
plt.ylabel('Number of words appearing x times')
plt.show()

我可以提供整个脚本,但我认为不需要。我得到的情节是:enter image description here

大多数单词只出现一次,频率意味着更少的单词。 182是""例如。显然这是一个丑陋而尴尬的情节。我的问题是如何让x轴显示更多信息。使用sklearn.preprocessing.scale()缩放数据是徒劳的,因为大多数观察都是负面的。我应该与np.arange()分组吗?

1 个答案:

答案 0 :(得分:0)

我想我得到了它,我使用log=True来缩放y轴,这是我认为更好的结果。

enter image description here