Создание гистограммы с конкретными метками - PullRequest
0 голосов
/ 31 октября 2019

Мне нужно создать график, где ось 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 собираются вместе в конце сверхудруг друга.

1 Ответ

0 голосов
/ 31 октября 2019

Вы можете указать как метки, так и местоположение. 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

...