![](/img/trans.png)
[英]Subplots in Plotly - Cufflinks: How to put two subplots in the same plot
[英]Plotly: How to use the same color scheme on two subplots?
我试图用 plotly 绘制两个散点图,其中在两个子图中自动选择的颜色是相同的,但我找不到这样做的方法。
下面是一个代码片段:
import plotly as py
import plotly.tools as to
import numpy as np
import plotly.graph_objs as go
fig=to.make_subplots(rows=1,cols=2,subplot_titles=['Plot 1','Plot 2'])
X=[0,50,100,150,200,250,300,350,400,450,500]
Y=[1,2,3,4,5,6,7,8,9,10,11]
Z=Y.copy()
for i in np.arange(11):
if i==0:
Z[0]=Y[0]
else:
Z[i]=Y[i]+Z[i-1]
trace=go.Scatter(x=X,y=Y)
fig.append_trace(trace,1,1)
trace=go.Scatter(x=X,y=Z,showlegend=False)
fig.append_trace(trace,1,2);
py.offline.plot(fig)
上面的代码绘制了两个子图,散点将具有不同的颜色。 我希望它们具有相同的颜色。 我知道我可以对两个散点上的颜色进行硬编码,但我需要从某些配色方案中自动选择颜色。
我怎样才能达到我所需要的?
以下建议使用 plotly 版本4.2.0
,但关于颜色的方法应该是相同的。
您可以使用以下方法在子图中的标记中设置线条的颜色:
line=dict(width=2, color=cols[0])
marker=dict(color=cols[1])
如果您想使用某种配色方案,您可以使用以下方法获取默认的绘图颜色:
#in:
import plotly
cols = plotly.colors.DEFAULT_PLOTLY_COLORS
#out:
['rgb(31, 119, 180)',
'rgb(255, 127, 14)',
'rgb(44, 160, 44)',
'rgb(214, 39, 40)',
'rgb(148, 103, 189)',
'rgb(140, 86, 75)',
'rgb(227, 119, 194)',
'rgb(127, 127, 127)',
'rgb(188, 189, 34)',
'rgb(23, 190, 207)']
这是一个示例,该示例在线条上使用相同配色方案中的相同颜色,并在标记上使用略有不同的颜色。
阴谋:
代码:
# imports
from plotly.subplots import make_subplots
import plotly.graph_objs as go
import pandas as pd
import numpy as np
import plotly
cols = plotly.colors.DEFAULT_PLOTLY_COLORS
fig=make_subplots(rows=1,cols=2,subplot_titles=['Plot 1','Plot 2'])
X=[0,50,100,150,200,250,300,350,400,450,500]
Y=[1,2,3,4,5,6,7,8,9,10,11]
Z=Y.copy()
for i in np.arange(11):
if i==0:
Z[0]=Y[0]
else:
Z[i]=Y[i]+Z[i-1]
trace=go.Scatter(x=X,
y=Y,
line=dict(width=2, color=cols[0]),
marker=dict(color=cols[1]),
showlegend=False
)
fig.append_trace(trace,1,1)
trace=go.Scatter(x=X,
y=Z,
line=dict(width=2, color=cols[0]),
marker=dict(color=cols[7]),
showlegend=False)
fig.append_trace(trace,1,2)
fig.show()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.