Я пытаюсь построить временной ряд за ~ 100 дней.Чтобы улучшить читаемость, я хочу ограничить количество отметок оси X.Однако и plt.locator_params(axis='x', nbins=6)
, и ax.xaxis.set_major_locator(plt.MaxNLocator(10))
просто показывают первые несколько тиков, а не каждый n-тик.График ниже должен иметь тики, равномерно распределенные между 05-23 и 07-21 (60 интервалов), а не 6 тиков, начинающиеся с 05-23
plt.stackplot(df.iloc[:,0], df.iloc[:, 1])
plt.legend(loc='upper left')
plt.xlabel("This axis actually goes from 05-23 to 07-21")
plt.locator_params(axis='x', nbins=6)

Используемый фрейм данных
id month-day result
0 05 - 23 78
1 05 - 24 154
2 05 - 25 138
3 05 - 26 176
4 05 - 27 142
5 05 - 28 122
6 05 - 29 199
7 05 - 30 202
8 05 - 31 194
9 06 - 01 166
10 06 - 02 141
11 06 - 03 136
12 06 - 04 108
13 06 - 05 149
14 06 - 06 168
15 06 - 07 182
16 06 - 08 192
17 06 - 09 147
18 06 - 10 133
19 06 - 11 109
20 06 - 12 115
21 06 - 13 124
22 06 - 14 172
23 06 - 15 204
24 06 - 16 131
25 06 - 17 145
26 06 - 18 128
27 06 - 19 179
28 06 - 20 170
29 06 - 21 385
30 06 - 22 427
31 06 - 23 404
32 06 - 24 471
33 06 - 25 334
34 06 - 26 557
35 06 - 27 291
36 06 - 28 337
37 06 - 29 718
38 06 - 30 658
39 07 - 01 524
40 07 - 02 406
41 07 - 03 744
42 07 - 04 941
43 07 - 05 919
44 07 - 06 855
45 07 - 07 740
46 07 - 08 612
47 07 - 09 592
48 07 - 10 797
49 07 - 11 804
50 07 - 12 1072
51 07 - 13 1141
52 07 - 14 1028
53 07 - 15 841
54 07 - 16 822
55 07 - 17 1157
56 07 - 18 1356
57 07 - 19 1031
58 07 - 20 1068
59 07 - 21 992