我正在尝试在x轴上绘制带有日期(熊猫的datetime)的图形。但是,它们以数字格式绘制(显示为指数)。
日期示例:
0 2014-05-01
1 2014-05-02
2 2014-05-03
3 2014-05-04
4 2014-05-05
Name: date, dtype: datetime64[ns]
情节代码:
trace1 = go.Scatter(x = df_iso_h.date,
y=del18_f_hum,
mode = 'markers')
data = [trace1]
py.iplot(data)
不确定如何解决此问题吗?
答案 0 :(得分:2)
您需要添加response.setHeader(
"Content-Security-Policy",
"default-src 'none'; script-src 'unsafe-inline' *.googleapis.com; style-src 'self' *.googleapis.com;font-src 'self' *.gstatic.com;connect-src ; img-src 'self' data:;base-uri 'none';frame-ancestors 'none';");
并在其中指定参数layout
。例如here。
所以尝试一下:
xaxis
这应该对您有帮助。
更新:尝试将# Create trace
trace1 = go.Scatter(x = df_iso_h.date,
y=del18_f_hum,
mode = 'markers')
# Add trace in data
data = [trace1]
# Create layout. With layout you can customize plotly plot
layout = dict(title = 'Scatter',
# Add what you want to see at xaxis
xaxis = df_iso_h.date
)
#Do not forget added layout to fig!
fig = dict(data=data, layout=layout)
# Plot scatter
py.iplot(data, filename="scatterplot")
列转换为datetime
(新列应采用strftime
格式!):
object
如果不起作用,请在df_iso_h["date"] = df_iso_h["date"].dt.strftime("%d-%m-%Y")
中添加此列。也许xaxis
不支持日期时间格式plotly
...请注意,您的yyyy-mm-dd
看起来像xaxis
答案 1 :(得分:1)
想通了... Plotly不使用熊猫的datetime,所以我不得不将熊猫的datetime转换为python datetime.datetime或datetime.date。
答案 2 :(得分:0)
这似乎是plotly.py版本3.2.0中引入的回归,并已在版本3.2.1中修复。
您现在可以简单地将pandas datetime列传递给plotly,它将像过去一样为您处理正确的转换。