Я пытаюсь сделать некоторые заговоры с модулем openpyxl в Python.Вот набор данных, из которого он извлекает информацию:
Date(x) Int(y)
2019-01-07 1
2019-01-09 2
2019-01-11 3
2019-01-14 4
2019-01-16 5
2019-01-18 6
2019-01-23 7
2019-01-25 8
2019-01-30 9
2019-02-01 10
2019-02-04 11
2019-02-08 12
2019-02-13 13
2019-02-15 14
2019-02-20 15
2019-02-22 16
2019-02-25 17
2019-02-27 18
2019-03-01 19
2019-03-20 20
2019-03-22 21
2019-03-25 22
2019-03-27 23
2019-04-01 24
2019-04-03 25
2019-04-05 26
2019-04-08 27
2019-04-10 28
2019-04-12 29
Вот код, который я использую для формирования графика:
chart = ScatterChart()
chart.title = "Testing graph"
chart.style = 12
chart.x_axis.title = 'Date(x)'
chart.y_axis.title = "Int(y)"
#Get x values for graph from the first DATE column
x_values = Reference(ws, min_col=1, max_col=1, min_row=1, max_row=27)
#Get y values for graph from the second INT column
y_values = Reference(ws, min_col=2, max_col=2, min_row=1, max_row=27)
series = Series(y_values, x_values, title="Int Number")
chart.series.append(series)
График дает правильные результаты, однако ось Xне так, как ожидалось.Я ожидал точку данных на оси X для КАЖДОЙ даты.Итак, здесь около 30 строк, поэтому я ожидаю около 30 точек на оси X, которые непосредственно соответствуют координате Y, которая является значением INT для этой ДАТЫ.
Вот пример того, что происходит.(Это был другой набор данных, поэтому не обращайте слишком пристального внимания на то, почему значения INT масштабируются линейно. Хотя это точно отображает проблему.)
Как вы можете видеть, первая точка на графике для оси X (2019-01-07) действительно размещена на графике.Там даже знак, показывающий это.(Я сам добавил метки в Excel, изменив тип графика, не зная, как это сделать с openpyxl)
Однако я хочу, чтобы каждая точка на графике соответствовала точке наОсь XКак я могу сделать это с помощью модуля openpyxl или другого решения?