Python plotly-直线不从yaxis开始
下面的代码是一个示例,因为我无法重现该问题。图2显示了我的问题,线不是从左边开始的(在yaxis上)。输入数据似乎是相同的,绘制图表的代码是完全相同的Python plotly-直线不从yaxis开始,python,plotly,Python,Plotly,下面的代码是一个示例,因为我无法重现该问题。图2显示了我的问题,线不是从左边开始的(在yaxis上)。输入数据似乎是相同的,绘制图表的代码是完全相同的 import pandas as pd from pandas.tseries.offsets import DateOffset sdate = date(2021,1,31) edate = date(2021,8,30) date_range = pd.date_range(sdate,edate-timedelta(days=1),fr
import pandas as pd
from pandas.tseries.offsets import DateOffset
sdate = date(2021,1,31)
edate = date(2021,8,30)
date_range = pd.date_range(sdate,edate-timedelta(days=1),freq='m')
df_test = pd.DataFrame({ 'Datum': date_range})
df_test.loc[len(df_test)+1,'Datum']=(df_test['Datum'].min()-DateOffset(months=1))
df_test=df_test.sort_values(by='Datum',ignore_index=True)
df_test['indexed'] = [1,2,3,4,5,6,7,7]
df_test['index'] = [5,5,3,4,5,6,7,7]
data = df_test
sdate=data['Datum'].min()
title = 'Gesamtperformance'
font ='Helvetica'
fig = go.Figure()
fig.add_trace(go.Scatter(x=data['Datum'], y=data['indexed'],
line = dict(color='blue', width=4),
mode='lines',
name=title))
fig.add_trace(go.Scatter(x=data['Datum'], y=data['index'],
line=dict(color='black', width=4, dash='dot'),
mode='lines',
name=title))
fig.layout = go.Layout(yaxis=dict(tickformat=".0%"))
fig.update_layout(font_family=font,
font=dict(
family=font,
size=30),
legend=dict(font=dict(family=font, size=30, color="black")))
fig.update_layout(yaxis_title="Performance",
margin=dict(l=100, r=0, t=0, b=120),
plot_bgcolor='grey',
legend=dict(
orientation="h",
yanchor="top",
y=-0.065, # distance legend to chart
xanchor="auto",
x=0.5)
)
fig.update_xaxes(dtick="M6", tickformat="%b %Y")
fig.update_layout(xaxis=dict(tick0=sdate)) # sets start date
fig.update_layout(width=1485, height=1100)
plotly.io.write_image(fig, file='test_line.png', format='png')
输出示例代码,其中行从yaxis开始:
输出,其中行不以yaxis(左)开头,我不知道为什么:
也许有人知道如何开始左边的线路。谢谢考虑在
更新布局
中使用x\u轴范围
。代码如下:
fig.update_layout(xaxis_range=[sdate, edate])
fig.update\u布局(xaxis\u范围=[sdate,edate])
有效吗?@sotmot:有效,谢谢!不客气:)。那我就把它作为答案加上。