为什么 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)
我之前做过很多次的事情都遇到了问题,但我只是看不出哪里出了问题。我有一个包含两列的数据框 - 日期和结果。我想沿 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)