我在Spyder中使用Python 3.6并尝试使用绘图离线库绘制图形。无论如何,我的csv文件中有一些丢失的日期,我认为它们会导致您在附加的屏幕截图中看到的问题。
这是我的python代码:
from plotly.offline import plot
import plotly.graph_objs as go
import pandas as pd
df = pd.read_csv('H://python/final_mk_output_regression.csv')
data = [go.Scatter(
x=df.MESS_DATUM,
y=df['sum_meal'])]
plot(data)
我无法获得正确的图表。例如,五月之前的部分非常令人困惑。 我在4月18日到4月30日的csv文件中缺少日期,这可能会导致这个问题。 我该如何解决这个问题?
答案 0 :(得分:1)
只需添加type =" category"到代码。 我们走了:
#PRINT DATA
data = [go.Scatter(
x=df.MESS_DATUM,
y=df['sum_meal'])]
layout = dict(
title="timeline meal orders",
xaxis = dict(
type="category"))
fig = dict(data=data, layout=layout)
plot(fig, filename="overview")
答案 1 :(得分:0)
仅添加 type ='categry'将无济于事,因为它将提供未排序的日期和时间。您还需要添加 categoryorder ='升序类别'。
这是修改后的代码:
data = [go.Scatter(
x=df.MESS_DATUM,
y=df['sum_meal'])]
layout = dict(
title="timeline meal orders",
xaxis = dict(
type="category",
categoryorder='category ascending'))
fig = dict(data=data, layout=layout)
plot(fig, filename="overview")