Не совсем понятно, что plot
должен отображать график, если вы укажете один аргумент, который представляет собой многостолбцовый фрейм данных.Таким образом, он интерпретирует это как построение каждого столбца в зависимости от индекса данных.Ваш первый столбец - datetime, второй - float.Я не думаю, что имеет смысл пытаться представить их в одном масштабе.Вместо этого вы, вероятно, захотите использовать первый столбец в качестве оси x, а второй - в качестве значений оси y.
Вы можете сделать это, сделав первый столбец индексом (эффективно создавая тогда один столбец)
plt.plot(df.set_index("ds"), "-o", markersize=2)
Или вы можете указать каждый столбец для первых двух аргументов plot
,
plt.plot(df.ds, df.y, "-o", markersize=2)
Вы также можете использовать панды непосредственно для построения графика, что приведет к немного другому форматированию оси x
df.set_index("ds").plot(marker="o", markersize=2)