如何在matplotlib中添加轴上点之间的间距?

时间:2015-11-20 16:19:47

标签: python matplotlib graph bigdata

我有一个包含大量数据的图表(x范围为7500,y范围为5100)。图表上的每个条形图都是文本中单词的使用次数。所以我想对x轴上的每个点都有这个词。

我的问题是如何隔离它们。

plt.figure(figsize=(12, 9))
ax = plt.subplot(111)
ax.spines["top"].set_visible(False)
ax.spines["right"].set_visible(False)

ax.get_xaxis().tick_bottom()
ax.get_yaxis().tick_left()

plt.xticks(x, objects, fontsize=12, rotation='vertical')
plt.yticks(range(300, 5600, 300), fontsize=12)

plt.xlabel("Word", fontsize=16)
plt.ylabel("Usage", fontsize=16)

plt.margins(0.2)
plt.subplots_adjust(bottom=0.15)
plt.bar(y_pos, performance, align="center", alpha=0.5)
plt.title('Word Usage in Beloved')
plt.show()

目前代码产生:

This is what it looks like currently.

1 个答案:

答案 0 :(得分:0)

以下是使用您的代码修改的代码。通过将icticks键添加到xticks并将值添加到bar并通过测量D的长度,我能够获得每个x轴条的每个单词。

plt.figure(figsize=(12, 9))
ax = plt.subplot(111)
ax.spines["top"].set_visible(False)
ax.spines["right"].set_visible(False)

ax.get_xaxis().tick_bottom()
ax.get_yaxis().tick_left()

D = {u'Label0':26, u'Label1': 17, u'Label2':30, u'Label3': 20, u'Label4': 12}

y = [4, 9, 2]

plt.xticks(range(len(D)), D.keys(), fontsize=12, rotation='vertical')
plt.yticks(range(300, 5600, 300), fontsize=12)

plt.xlabel("Word", fontsize=16)
plt.ylabel("Usage", fontsize=16)

plt.margins(0.2)
plt.subplots_adjust(bottom=0.15)
plt.bar(y, D.values(), align="center", alpha=0.5)
plt.title('Word Usage in Beloved')
plt.show()

由于代码的其余部分未发布,我只能使用我的代码。如果您发布完整代码,我可以帮助您更好地帮助您。希望这会有所帮助。