如何减少熊猫.plot函数中x轴刻度之间的间距?

时间:2019-07-01 13:24:10

标签: python pandas matplotlib

我创建了以下情节:

enter image description here

使用以下代码:

dataframe_plot2.set_index('Class')[['HB ref', "HB tussenfase","HB raaigras"]].T.plot(kind='bar', stacked=True,width=0.1)
plt.legend(loc='center left', bbox_to_anchor=(1.0, 0.5))

但是,x轴刻度之间的间隔很大。我希望这个距离更小。这样做的简单方法是什么?

网络上的许多页面说明了如何在非常特殊的情况下增大空间,但没有说明如何减小空间。 例如How to change spacing between ticks in matplotlib?

之前有人问过类似的问题:Scatter plot: Decreasing spacing between scatter points/x-axis ticks但是我所不清楚的是答案。

还检查了:

但这并没有提供我所需的信息。

我也不在寻找滴答频率(例如Changing the "tick frequency" on x or y axis in matplotlib?

我尝试过:

import matplotlib.pyplot as plt
import matplotlib.ticker as ticker
dataframe_plot2.set_index('Class')[['HB ref', "HB tussenfase","HB raaigras"]].T.plot(kind='bar', stacked=True,width=0.1)
dataframe_plot2.xaxis.set_major_locator(plt.ticker.MultipleLocator(5))
plt.legend(loc='center left', bbox_to_anchor=(1.0, 0.5))

AttributeError: 'DataFrame' object has no attribute 'xaxis'

import matplotlib.pyplot as plt
import matplotlib.ticker as tic
dataframe_plot2.set_index('Class')[['HB ref', "HB tussenfase","HB raaigras"]].T.plot(kind='bar', stacked=True,width=0.1)
tic.MultipleLocator(5)
plt.legend(loc='center left', bbox_to_anchor=(1.0, 0.5))

但这没有效果。

更新: 正在运行:

import matplotlib.pyplot as plt
dataframe_plot2.set_index('Class')[['HB ref', "HB tussenfase","HB raaigras"]].T.plot(kind='bar', stacked=True,width=0.1)
plt.xlim(-2, 4)
plt.legend(loc='center left', bbox_to_anchor=(1.0, 0.5))

导致:

enter image description here

编辑当前和预期输出:

当前:

enter image description here

预期:

enter image description here

0 个答案:

没有答案