为什么在绘制分类变量时会出现matplotlib错误?

gk7wooem  于 2022-11-24  发布在  其他
关注(0)|答案(1)|浏览(102)

我觉得自己很愚蠢,但我似乎无法修复这个错误或在网上找到任何解决方案。为什么无论我如何尝试使用matplotlib绘制它,我总是得到以下错误?
例如,即使下面的代码也会出现同样的错误-

names = list(fig1['day'])
values = list(fig1['count'])
fig, axs = plt.subplots(figsize=(25, 10))
axs.bar(names, values, color='plum')

matplotlib.类别:使用分类单位绘制可全部解析为浮点数或日期得字符串列表.如果这些字符串应绘制为数字,请在绘制前转换为适当得数据类型.

更新:我找到了解决方案-https://discourse.matplotlib.org/t/why-am-i-getting-this-matplotlib-error-for-plotting-a-categorical-variable/21758/2

ee7vknir

ee7vknir1#

实际上正确的解决方案是这样的,因为更通用,不仅适用于日历对象:

fig, ax = plt.subplots()

names = ['Monday', 'Tuesday', 'Wednesday']
# you may try with: 
# names = ['1111', '2222', '3333']

# This variable is a range (numerical values) and we pass it for number of ticks on X axis:
rln = range(len(names))

values = [230, 112, 12]
ax.bar(rln, values)

# Finally, we are setting ticks labels on X axis:
plt.xticks(rln, names)
plt.show()

相关问题