为什么 Matplotlib Y 轴显示实际数据而不是范围

Why is Matplotlib Y axis showing actual data instead of range

我之前做过很多次的事情都遇到了问题,但我只是看不出哪里出了问题。我有一个包含两列的数据框 - 日期和结果。我想沿 X 轴绘制 Daate,沿 Y 轴绘制结果。数据框按日期顺序排列。我试过用日期作为索引,然后才排序。但是 Y 轴不是从低到高的范围,而是显示实际结果。这是一个例子:

x 轴在跳来跳去,而不是条形图。 代码再简单不过了:

def results_chart(df):

    fig, ax = plt.subplots()

    ax.set_xlabel('Date', fontsize=10)
    ax.set_ylabel('Result', fontsize=12)
    ax.set_title("Results")

    ax.bar(df["Date"], df["Result"])
    plt.tight_layout()
    graph = get_graph()

    return graph

我一定是遗漏了一些非常基本的东西。感谢帮助,

df['Result'] 中的值似乎是字符串。您需要将它们转换为浮点数。

df['Result'] = df['Result'].astype(float)