Make plot out of multiple plot.ly figures in Python

帅比萌擦擦* 提交于 2019-12-08 04:00:38

问题


I've made 4 figures in plot.ly, for example:

import plotly.plotly as py
import plotly.graph_objs as go

trace1 = go.Scatter(
    x=[0, 1, 2, 3, 4, 5, 6, 7, 8],
    y=[8, 7, 6, 5, 4, 3, 2, 1, 0]
)
trace2 = go.Scatter(
    x=[0, 1, 2, 3, 4, 5, 6, 7, 8],
    y=[0, 1, 2, 3, 4, 5, 6, 7, 8]
)
data = [trace1, trace2]
fig1 = go.Figure(data=data, layout=layout)
fig2 = go.Figure(data=data, layout=layout)
fig3 = go.Figure(data=data, layout=layout)
fig4 = go.Figure(data=data, layout=layout)

Now I want to make a subplot, and add each figure to a quadrant of it:

from plotly import tools
fig = tools.make_subplots(rows=2, cols=2)

but I don't see any fig.append_fig() method, only an append_trace() method. Is there no easy way to drop in a figure into a subplot in plot.ly?


回答1:


I think fig['data'] += data can help.

import plotly.plotly as py
import plotly.graph_objs as go

x1 = [0, 1, 2, 3, 4, 5, 6, 7, 8]
y1 = [8, 7, 6, 5, 4, 3, 2, 1, 0]
x2 = [0, 1, 2, 3, 4, 5, 6, 7, 8] 
y2 = [0, 1, 2, 3, 4, 5, 6, 7, 8]

data1 = [go.Scatter(x=x1, y=y1), go.Scatter(x=x2, y=y2)]
data2 = [go.Scatter(x=x1, y=y1, xaxis='x2', yaxis='y2'), go.Scatter(x=x2, y=y2, xaxis='x2', yaxis='y2')]
data3 = [go.Scatter(x=x1, y=y1, xaxis='x3', yaxis='y3'), go.Scatter(x=x2, y=y2, xaxis='x3', yaxis='y3')]
data4 = [go.Scatter(x=x1, y=y1, xaxis='x4', yaxis='y4'), go.Scatter(x=x2, y=y2, xaxis='x4', yaxis='y4')]

from plotly import tools
fig = tools.make_subplots(rows=2, cols=2)
fig['data'] += data1
fig['data'] += data2
fig['data'] += data3
fig['data'] += data4
py.plot(fig, filename = 'basic-line')


来源:https://stackoverflow.com/questions/42096172/make-plot-out-of-multiple-plot-ly-figures-in-python

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!