绘制饼图和标签顺序

Rod*_*Rod 5 python plotly

如何更改饼图中标签的顺序(情节)?

我想强制执行此命令: 20 16 15

并不是 16 15 20


我的 .csv 文件:

id,A,B,C
1,15,16,45
2,20,15,54
3,16,18,60
4,16,15,54
5,15,12,68
6,16,20,68
Run Code Online (Sandbox Code Playgroud)

我的蟒蛇代码

import pandas
import plotly.graph_objects as go

col_label = "A"
col_values = "Count"

data = pandas.read_csv(mycsvfile)
v = data[col_label].value_counts()
new = pandas.DataFrame({
    col_label: v.index,
    col_values: v.values
})
fig = go.Figure(
    data=[go.Pie(
        labels=new[col_label],
        values=new[col_values])
    ])
fig.show()
Run Code Online (Sandbox Code Playgroud)

给出这个图: 图形

Val*_*nit 10

有2件事:

import pandas
import plotly.graph_objects as go

col_label = "A"
col_values = "Count"

data = pandas.read_csv("mycsvfile")
v = data[col_label].value_counts()
new = pandas.DataFrame({
    col_label: v.index,
    col_values: v.values
})
# First, make sure that the data is in the order you want it to be prior to plotting 
new = new.sort_values(
  by=col_label, 
  ascending=False)

fig = go.Figure(
    data=[go.Pie(
        labels=new[col_label],
        values=new[col_values],
        # Second, make sure that Plotly won't reorder your data while plotting
        sort=False)
    ])
fig.write_html('first_figure.html', auto_open=False)
Run Code Online (Sandbox Code Playgroud)

请参阅此Repl.it以获取工作演示(它生成带有绘图的 html 页面)。