首页 > 解决方案 > 如何绘制所有 xlabels?

问题描述

我正在尝试从数据框stat绘制图表,其中标签作为 x 轴上的单个字母,位于stat的索引中。但不是所有字母,而是只显示几个字母,尽管 x 轴上有足够的空间供每个人使用。我尝试了几种方法:

xticks = sorted(stat.index.values) #array with separated letters
stat.plot(xticks=xticks)

我得到的是数字而不是字母。

或者

ax = stat.plot()
ax.set_xticks(xticks)

matplotlib.units.ConversionError:无法将值转换为轴单位:['"', ')', ',', '.', '0', '1', '2', '3', '4'、'5'、'6'、'7'、'8'、'9'、'a'、'e'、'o'、'q'、'»'、'а'、'б ', 'в', 'г', 'д', 'е', 'з', 'и', 'й', 'к', 'л', 'м', 'н', 'о', 'п', 'р', 'с', 'т', 'у', 'х', 'ц', 'ч', 'ш', 'ы', 'ь', 'я', '№ '

或者

ax = stat.plot()
ax.set_xticklabels(xticks)

ValueError:FixedLocator 位置的数量 (7),通常来自对 set_ticks 的调用,与刻度标签的数量 (46) 不匹配。

或者

fig, ax = plt.subplots(1, 1)
locator = matplotlib.ticker.FixedLocator(xticks)
ax.xaxis.set_major_locator(locator)
ax.grid()
stat.plot(ax=ax)

绘图框完全变成白色,没有任何数据。

没有任何效果。我怎样才能完成这个简单的任务?

标签: pythondataframematplotlibxticks

解决方案


推荐阅读