我一直在尝试使用Jupyter笔记本(离线版)中的Plotly(version 1.12.9)制作自定义大小的子图网格。Plotly网站上有很好的示例,但它们都是散点图。我修改了其中一个,使其看起来像我想要的样子,并且它适用于散点图:
import plotly
import plotly.offline as py
import plotly.graph_objs as go
py.init_notebook_mode(connected=True)
labels = ['Oxygen','Hydrogen','Carbon_Dioxide','Nitrogen']
values = [4500,2500,1053,500]
trace0 = go.Scatter(x=[1, 2], y=[1, 2])
trace1 = go.Scatter(x=[1, 2], y=[1, 2])
trace2 = go.Scatter(x=[1, 2], y=[1, 2])
trace3 = go.Scatter(x=[1, 2], y=[1, 2])
trace4 = go.Scatter(x=[1, 2], y=[1, 2])
trace5 = go.Scatter(x=[1, 2], y=[1, 2])
fig = plotly.tools.make_subplots(
rows=3,
cols=3,
specs=[[{}, {}, {}], [{}, {'colspan': 2, 'rowspan': 2}, None], [{} , None, None]],
subplot_titles=('First Subplot','Second Subplot', 'Third Subplot')
)
fig.append_trace(trace0, 3, 1)
fig.append_trace(trace1, 2, 1)
fig.append_trace(trace2, 1, 1)
fig.append_trace(trace3, 1, 2)
fig.append_trace(trace4, 1, 3)
fig.append_trace(trace5, 2, 2)
py.iplot(fig)
但是像这样更改饼图的跟踪:
labels = ['Oxygen','Hydrogen','Carbon_Dioxide','Nitrogen']
values = [4500,2500,1053,500]
trace0 = go.Pie(labels=labels,values=values)
trace1 = go.Pie(labels=labels,values=values)
trace2 = go.Pie(labels=labels,values=values)
trace3 = go.Pie(labels=labels,values=values)
trace4 = go.Pie(labels=labels,values=values)
trace5 = go.Pie(labels=labels,values=values)
仅仅抛出这个错误:
PlotlyDictKeyError: 'xaxis' is not allowed in 'pie'
Path To Error: ['xaxis']
Valid attributes for 'pie' at path [] under parents []:
['pullsrc', 'textfont', 'hoverinfo', 'domain', 'label0', 'legendgroup',
'showlegend', 'scalegroup', 'textpositionsrc', 'pull', 'visible',
'sort', 'name', 'outsidetextfont', 'dlabel', 'stream', 'hole',
'textinfo', 'marker', 'labels', 'labelssrc', 'rotation', 'opacity',
'values', 'insidetextfont', 'direction', 'textsrc', 'textposition',
'type', 'valuessrc', 'text', 'uid']
Run `<pie-object>.help('attribute')` on any of the above.
'<pie-object>' is the object at []
只能用散点图来做这个吗?我在 plotly 的文档里没有找到相关的内容。