创建带有特定标签的条形图

问题描述 投票:0回答:1

我需要创建一个图表,其中x轴是日期,而y轴是当天某事件的发生频率。我用plt.bar()绘制的问题是,由于我在8年中每天都有值,因此x轴上的标签太多了,难以辨认。如何更改它,使其仅显示年份而不是每天都有标签?

我尝试过此

# data == dict, keys == 'yyyy-mm-dd'
plt.bar(data.keys(), data.values())
ticks = []
for key in data.keys():
    ticks.append(key[0:4]) # Gets only years. 
ticks = list(set(ticks)) # Get rid of duplicates. 
plt.xticks(ticks)
plt.show()

但是新的xticks在最后一个末端彼此捆扎在一起。

python matplotlib bar-chart seaborn
1个回答
0
投票

您可以同时指定刻度标签和位置。 pyplot.xticks([0, 0.5, 1, 1, 1], ('A', 'B', 'C', 'D', 'E'))结果:enter image description here

pyplot.xticks(numpy.arange(5), ('A', 'B', 'C', 'D', 'E'))enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.