加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

Python玩转Excel表!没有哪一门语言能像Python这么牛逼!

发布时间:2020-12-17 00:40:59 所属栏目:Python 来源:网络整理
导读:可以组合了饼图和圆环图来创建仪表盘图表。 第一个图是带有4个切片的圆环图,前3个切片与仪表盘的颜色对应,第4个切片是圆环的另一半,设置为不可见。 然后,添加含有3个切片的饼图,将第1个和第3个切片设置为不可见,将第2个切片当作仪表盘的指针。 使用数

可以组合了饼图和圆环图来创建仪表盘图表。

第一个图是带有4个切片的圆环图,前3个切片与仪表盘的颜色对应,第4个切片是圆环的另一半,设置为不可见。

然后,添加含有3个切片的饼图,将第1个和第3个切片设置为不可见,将第2个切片当作仪表盘的指针。

使用数据系列中各个数据点的图形属形来实现效果。代码如下:

from openpyxl import Workbook

from openpyxl.chart import PieChart,DoughnutChart,Series,Reference

from openpyxl.chart.series import DataPoint

data= [

["Donut","Pie"],

[25,75],

[50,1],124],

[100],

]

wb= Workbook()

ws= wb.active

for row in data:

ws.append(row)

# 第一个图是圆环图

c1= DoughnutChart(firstSliceAng=270,holeSize=50)

c1.title= "Code coverage"

c1.legend= None

ref= Reference(ws,min_col=1,min_row=2,max_row=5)

s1= Series(ref,title_from_data=False)

slices= [DataPoint(idx=i) fori in range(4)]

slices[0].graphicalProperties.solidFill= "FF3300" #红色

slices[1].graphicalProperties.solidFill= "FCF305" #黄色

slices[2].graphicalProperties.solidFill= "1FB174" #绿色

slices[3].graphicalProperties.noFill= True #不可见

s1.data_points= slices

c1.series= [s1]

# 第二个图是饼图

c2= PieChart(firstSliceAng=270)

c2.legend= None

ref= Reference(ws,min_col=2,max_col=2,max_row=4)

s2= Series(ref,title_from_data=False)

slices= [DataPoint(idx=i) fori in range(3)]

slices[0].graphicalProperties.noFill= True #不可见

slices[1].graphicalProperties.solidFill= "000000" #黑色针状

slices[2].graphicalProperties.noFill= True #不可见

s2.data_points= slices

c2.series= [s2]

c1+= c2 # 组合图表

ws.add_chart(c1,"D1")

wb.save("gauge.xlsx")

运行代码后,生成的工作簿中的图表如下图1所示。

进群:548377875? ?即可获取大量的学习资料哦!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读