问题描述
||
我正在使用Python中的PyChart库创建饼图。
这是我的代码:
from pychart import *
import sys
data = [(\"foo\",10),(\"bar\",20),(\"baz\",30),(\"ao\",40)]
theme.use_color = True
theme.get_options()
ar = area.T(size = (150,150),legend = legend.T(),x_grid_style = None,y_grid_style = None)
plot = pie_plot.T(data = data,arc_offsets = [0,0],label_offset = 20,arrow_style = arrow.a3)
ar.add_plot(plot)
ar.draw()
如何在此饼图的(%)中显示数据?
解决方法
在将数据传递到绘图函数之前是否可以将其转换为百分比?
例如:
def to_percents(data):
total = float(sum(v for _,v in data))
data[:] = [(k,v / total) for k,v in data]
return data
data = to_percents([(\"foo\",1),(\"bar\",3),(\"baz\",5),(\"ao\",7)])
print data
输出:
[(\'foo\',0.0625),(\'bar\',0.1875),(\'baz\',0.3125),(\'ao\',0.4375)]