[英]Plotly: How to add borders and sidelabels to subplots, and syncronize panning?
下图是我尝试在Python中使用Plotly(位于最底部的代码)进行2x2绘图的情况。
我正在尝试改善图表,但似乎无法执行以下操作:
任何帮助将非常感激。 下面是到目前为止的代码。
import plotly.offline as poff
import plotly.tools as tls
x = list(range(10,20))
y = x
y1 = [10-i for i in x]
y2 = [abs(i-5) for i in x]
y3 = [abs(2*i- 5) for i in x]
fig = tls.make_subplots(rows=2, cols=2, shared_xaxes=True, shared_yaxes=True,
vertical_spacing=0.01,
horizontal_spacing=0.01, print_grid=True)
fig.append_trace(go.Scatter({'x':x, 'y':y, 'name':'A1'},), 1, 1)
fig.append_trace(go.Scatter({'x':x, 'y':y1, 'name':'B2'},), 2, 2)
fig.append_trace(go.Scatter({'x':x, 'y':y2, 'name':'A2'},), 2, 1)
fig.append_trace(go.Scatter({'x':x, 'y':y3, 'name':'B1'},), 1, 2)
fig['layout'].update(title='Multiple Subplots')
url = poff.plot(fig, filename="test23.html")
这里的建议应该非常接近100%,至少就目前实际可行而言:
1.子图边框: fig_update_xaxes(mirror=True)
2.您已经接近目前的状态
3.边标签: fig['layout']['xaxis']['title']='Label x-axis 1'
情节:
码:
#import plotly.offline as poff
#import plotly.tools as tls
from plotly.subplots import make_subplots
import plotly.graph_objects as go
import pandas as pd
x = list(range(10,20))
y = x
y1 = [10-i for i in x]
y2 = [abs(i-5) for i in x]
y3 = [abs(2*i- 5) for i in x]
fig = make_subplots(rows=2, cols=2, shared_xaxes=True, shared_yaxes=True,
#vertical_spacing=0.1,
#horizontal_spacing=0.05,
print_grid=True,)
fig.append_trace(go.Scatter({'x':x, 'y':y, 'name':'A1'},), 1, 1)
fig.append_trace(go.Scatter({'x':x, 'y':y1, 'name':'B2'},), 2, 2)
fig.append_trace(go.Scatter({'x':x, 'y':y2, 'name':'A2'},), 2, 1)
fig.append_trace(go.Scatter({'x':x, 'y':y3, 'name':'B1'},), 1, 2)
fig['layout'].update(title='Multiple Subplots')
fig.update_xaxes(showline=True, linewidth=1, linecolor='black', mirror=True)
fig.update_yaxes(showline=True, linewidth=1, linecolor='black', mirror=True)
# edit axis labels
fig['layout']['xaxis']['title']='Label x-axis 1'
fig['layout']['xaxis2']['title']='Label x-axis 2'
fig['layout']['xaxis3']['title']='Label x-axis 3'
fig['layout']['xaxis4']['title']='Label x-axis 4'
fig['layout']['yaxis']['title']='Label y-axis 1'
fig['layout']['yaxis2']['title']='Label y-axis 2'
fig['layout']['yaxis3']['title']='Label x-axis 3'
fig['layout']['yaxis4']['title']='Label x-axis 4'
fig.show()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.