Я строю линейный график следующим образом:
plt.plot(xs, ys)
plt.show()
, где xs - это список строк, представляющих даты, например:
['2015-01-01 00:00:00', '2015-01-15 00:00:00', '2015-01-29 00:00:00', '2015-02-12 00:00:00', '2015-02-26 00:00:00', '2015-03-12 00:00:00', '2015-03-26 00:00:00', '2015-04-09 00:00:00', '2015-04-23 00:00:00', '2015-05-07 00:00:00', '2015-05-21 00:00:00', '2015-06-04 00:00:00', '2015-06-18 00:00:00', '2015-07-02 00:00:00', '2015-07-16 00:00:00', '2015-07-30 00:00:00', '2015-08-13 00:00:00', '2015-08-27 00:00:00', '2015-09-10 00:00:00', '2015-09-24 00:00:00', '2015-10-08 00:00:00', '2015-10-22 00:00:00', '2015-11-05 00:00:00', '2015-11-19 00:00:00', '2015-12-03 00:00:00', '2015-12-17 00:00:00', '2015-12-31 00:00:00', '2016-01-14 00:00:00', '2016-01-28 00:00:00', '2016-02-11 00:00:00', '2016-02-25 00:00:00', '2016-03-10 00:00:00', '2016-03-24 00:00:00', '2016-04-07 00:00:00', '2016-04-21 00:00:00', '2016-05-05 00:00:00', '2016-05-19 00:00:00', '2016-06-02 00:00:00', '2016-06-16 00:00:00', '2016-06-30 00:00:00', '2016-07-14 00:00:00', '2016-07-28 00:00:00', '2016-08-11 00:00:00', '2016-08-25 00:00:00', '2016-09-08 00:00:00', '2016-09-22 00:00:00', '2016-10-06 00:00:00', '2016-10-20 00:00:00', '2016-11-03 00:00:00', '2016-11-17 00:00:00', '2016-12-01 00:00:00', '2016-12-15 00:00:00', '2016-12-29 00:00:00', '2017-01-12 00:00:00', '2017-01-26 00:00:00', '2017-02-09 00:00:00', '2017-02-23 00:00:00', '2017-03-09 00:00:00', '2017-03-23 00:00:00', '2017-04-06 00:00:00', '2017-04-20 00:00:00', '2017-05-04 00:00:00', '2017-05-18 00:00:00', '2017-06-01 00:00:00', '2017-06-15 00:00:00', '2017-06-29 00:00:00', '2017-07-13 00:00:00', '2017-07-27 00:00:00', '2017-08-10 00:00:00', '2017-08-24 00:00:00', '2017-09-07 00:00:00', '2017-09-21 00:00:00', '2017-10-05 00:00:00', '2017-10-19 00:00:00', '2017-11-02 00:00:00', '2017-11-16 00:00:00', '2017-11-30 00:00:00', '2017-12-14 00:00:00', '2017-12-28 00:00:00', '2018-01-11 00:00:00', '2018-01-25 00:00:00', '2018-02-08 00:00:00', '2018-02-22 00:00:00', '2018-03-08 00:00:00', '2018-03-22 00:00:00', '2018-04-05 00:00:00', '2018-04-19 00:00:00', '2018-05-03 00:00:00', '2018-05-17 00:00:00', '2018-05-31 00:00:00', '2018-06-14 00:00:00', '2018-06-28 00:00:00', '2018-07-12 00:00:00', '2018-07-26 00:00:00', '2018-08-09 00:00:00', '2018-08-23 00:00:00', '2018-09-06 00:00:00', '2018-09-20 00:00:00', '2018-10-04 00:00:00', '2018-10-18 00:00:00', '2018-11-01 00:00:00', '2018-11-15 00:00:00', '2018-11-29 00:00:00', '2018-12-13 00:00:00', '2018-12-27 00:00:00']
, а ys - это набор значений intзначения, представляющие баллы, например:
[70883, 63106, 76973, 71973, 54580, 64623, 67127, 81052, 41652, 58521, 57382, 45382, 68905, 77474, 68977, 68644, 93629, 88714, 108090, 130869, 129094, 114523, 110771, 132210, 110044, 140998, 157442, 188342, 156869, 179707, 203507, 240942, 262423, 278120, 260656, 314315, 273946, 365689, 343251, 299117, 373867, 463917, 625699, 589657, 565107, 615107, 552405, 659275, 910939, 535982, 699631, 853283, 564078, 903231, 1046810, 1020451, 1047713, 707396, 810879, 607520, 569610, 854798, 765915, 686773, 680880, 608677, 800183, 698931, 510455, 564391, 513260, 605777, 556326, 666129, 724712, 676530, 570635, 633332, 507160, 565754, 681522, 481315, 403914, 364243, 365601, 318114, 284698, 372140, 250942, 272253, 452179, 340992, 359701, 322556, 301214, 431651, 313142, 352983, 31275, 48839, 37165, 27091, 31378, 28689, 33870]
Это отлично, но при построении графика на оси X есть ТИНА тиков, и она не читается.Поэтому я хочу уменьшить количество тиков на оси х.Я попытался добавить следующие две строки самостоятельно перед вызовом plt.show ():
plt.gca().set_xticks(plt.gca().get_xticks()[::15])
plt.gca().xaxis.major.locator.set_params(nbins=5)
Насколько я понимаю, первая из этих строк должна использовать 1 из каждых 15 тиков на графикеа второй должен изменить его, чтобы иметь только 6 тиков.Оба они уменьшают количество тиков, НО они отображают только первые несколько дат, например:
['2015-01-01 00:00:00', '2015-01-15 00:00:00', '2015-01-29 00:00:00', '2015-02-12 00:00:00', '2015-02-26 00:00:00']
в качестве меток вдоль нижней части.Это похоже на то, что я настраиваю его на использование меньшего количества тиков, и это хорошо, но он использует только первые n тиков, когда я хочу, чтобы он использовал равномерно распределенные тики из всего набора.