[英]How to subplot pie chart in plotly?
How can I subplot 'pie1' in 'fig', so it be located at 'the first' position.如何在“无花果”中对“pie1”进行子图,使其位于“第一个”位置。 this is how I am doing it but it doesn't work out这就是我的做法,但它不起作用
import pandas as pd
import numpy as np
import seaborn as sns
import plotly.offline as pyp
import plotly.graph_objs as go
from plotly import tools
import plotly.plotly as py
from plotly.offline import iplot,init_notebook_mode
from IPython.core.display import HTML
import plotly.io
df1=pd.read_excel('file.xlsx',sheet_name='sheet1',index=False)
con_pivot=pd.pivot_table(con,index='Category',values=('Payment'),aggfunc='sum',margins=True,margins_name='Total')
fig = tools.make_subplots(rows=2, cols=2, subplot_titles=('The first','3','2','4'))
pie1=go.Pie(labels=con_pivot.index,values=con_pivot.values)
fig.append_trace(pie1,1,1)
pyo.plot(fig)
Any help help will be appreciated.任何帮助将不胜感激。 Thank you谢谢
The way to achieve the side by side pie charts using the make_subplots
function from plotly would be the following (Many thanks to @Oysiyl for the input data):使用make_subplots
函数实现并排饼图的方法如下(非常感谢@Oysiyl 提供输入数据):
from plotly.subplots import make_subplots
import plotly.graph_objects as go
from plotly.offline import plot
fig = make_subplots(rows=1, cols=2, specs=[[{"type": "pie"}, {"type": "pie"}]])
fig.add_trace(go.Pie(
values=[16, 15, 12, 6, 5, 4, 42],
labels=["US", "China", "European Union", "Russian Federation",
"Brazil", "India", "Rest of World"
],
domain=dict(x=[0, 0.5]),
name="GHG Emissions"),
row=1, col=1)
fig.add_trace(go.Pie(
values=[27, 11, 25, 8, 1, 3, 25],
labels=["US", "China", "European Union", "Russian Federation",
"Brazil", "India", "Rest of World"
],
domain=dict(x=[0.5, 1.0]),
name="CO2 Emissions"),
row=1, col=2)
plot(fig)
You should look at domain parameter to make subplots from piecharts.您应该查看域参数以从饼图中制作子图。 For example, to make two piecharts in a 1 row (xaxis), you can specify how much place will occupy by first and second plots (from 0% to 50% for first and from 50% to 100% for second).例如,要在 1 行 (xaxis) 中制作两个饼图,您可以指定第一幅图和第二幅图将占据多少位置(第一幅图从 0% 到 50%,第二幅图从 50% 到 100%)。
Code:代码:
from plotly import tools
import plotly.offline as py
import plotly.graph_objs as go
trace1 = go.Pie(
values=[16, 15, 12, 6, 5, 4, 42],
labels=["US", "China", "European Union", "Russian Federation",
"Brazil", "India", "Rest of World"
],
domain=dict(x=[0, 0.5]),
name="GHG Emissions",
hoverinfo="label+percent+name",
)
trace2 = go.Pie(
values=[27, 11, 25, 8, 1, 3, 25],
labels=["US", "China", "European Union", "Russian Federation",
"Brazil", "India", "Rest of World"
],
domain=dict(x=[0.5, 1.0]),
name="CO2 Emissions",
hoverinfo="label+percent+name",
)
layout = go.Layout(title="Global Emissions 1990-2011",)
data = [trace1, trace2]
fig = go.Figure(data=data, layout=layout)
py.plot(fig, filename='simple-pie-subplot')
Output:输出: You also can check documentation and found here example for 2x2 subplot if you need to.如果需要,您还可以查看文档并在此处找到 2x2 子图的示例。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.