python+pptx:(三)添加统计图、删除指定页

embedded/2024/11/14 22:20:39/

目录

统计图

删除PPT页


python">from pptx import Presentation
from pptx.util import Cm, Inches, Mm, Pt
from pptx.dml.color import RGBColor
from pptx.chart.data import ChartData
from pptx.enum.chart import XL_CHART_TYPE, XL_LABEL_POSITION, XL_DATA_LABEL_POSITIONfile_path = r'C:\Users\Administrator\Desktop\testfile\测试文件\test.pptx'
prs = Presentation(file_path)  # 创建PPT文件对象,没有参数为创建新的PPT,有参数表示打开已有PPT文件对象

统计图

python"># 设置数据对象
ct = prs.slides[6].shapes
chart_data_x = ['Q1', 'Q2', 'Q3', 'Q4']
chart_data_y1 = [2010, 988, 1085, 2588]
chart_data_y2 = [2880, 699, 1011, 2623]
chart_data_y3 = [1334, 955, 2565, 3665]
chart_data = ChartData()
chart_data.categories = chart_data_x  # 设置横轴数据
chart_data.add_series(name='一厂', values=chart_data_y1)
chart_data.add_series(name='二厂', values=chart_data_y2)
chart_data.add_series(name='三厂', values=chart_data_y3)# 添加统计图
left, top, width, height = Cm(3), Cm(5), Cm(25), Cm(12)
# new_chart = ct.add_chart(chart_type=XL_CHART_TYPE.LINE, x=left, y=top, cx=width, cy=height, chart_data=chart_data)  # chart_type图表样式,LINE为折线图
new_chart = ct.add_chart(chart_type=XL_CHART_TYPE.COLUMN_CLUSTERED, x=left, y=top, cx=width, cy=height,chart_data=chart_data) # COLUMN_CLUSTERED为柱状图# 设置统计图标题样式和整体颜色风格
get_chart = new_chart.chart
get_chart.chart_style = 20  # 整体颜色风格(取值为1-48)
get_chart.has_title = True  # 设置标题
get_chart.chart_title.text_frame.clear()  # 清除原标题
new_tile = get_chart.chart_title.text_frame.add_paragraph()
new_tile.text = '2024季度账目汇总(单位:万元)'
new_tile.font.size = Pt(20)
new_tile.font.color.rgb = RGBColor(100, 200, 50)# 设置数据节点样式
plot = get_chart.plots[0]  # 获取图表的plot
plot.has_data_labels = True  # 统计图表节点上是否显示数据
p = plot.data_labels  # 数据标签控制类
p.font.size = Pt(5)  # 测试没有用!!
p.font.color.rgb = RGBColor(80, 200, 100)  # 测试没有用!!
p.position = XL_DATA_LABEL_POSITION.CENTER  # 设置数据位置,INSIDE_END\OUTSIDE_END 等

删除PPT页

python">page = list(prs.slides._sldIdLst)  # 获取ppt页列表,slides 对象的源码中有私有属性sldIdLst指向幻灯片元素集合,获取幻灯片页数
prs.slides._sldIdLst.remove(page[-2])  # 删除指定页

http://www.ppmy.cn/embedded/137603.html

相关文章

软硬互联——革新机器人非标产线智能制造

在智能制造的浪潮中,每一条生产线都承载着企业向智能化、高效化转型的梦想。特别是对于机器人非标产线而言,如何在复杂多变的生产任务中保持高效、灵活与智能化,成为了众多制造企业关注的焦点。今天,就让我们一同探索IO模块、网关…

【国产MCU系列】-GD32F4内存映射

了解GD32F4内存映射 文章目录 了解GD32F4内存映射1、基于ARM的处理器介绍2、Cortex和基于Cortex-M的处理器3、Cortex-M的核心寄存器4、Cortex-M的内存映射5、GD32F4xx的内存映射1、基于ARM的处理器介绍 ARM处理器是指由多家硅制造商生产的CPU的基本构建块(因此称为核心)的多…

DDE(深度桌面环境) Qt 6.8 适配说明

内容来源:deepin Plant Qt 6.8 发布已经有一段时间了,各个发行版尝试移植 DDE 时发现包括 dde-shell 在内的几个组件存在比较明显的问题,DDE 小组进行了相关的紧急修复。由于 DDE 部分项目也在分叉维护的状态,为了方便各位移植人…

Three.js中文教程

⬇️ 整理了一些 Three.js 的笔记,有兴趣的工友可以看看 ⬇️ 《Three.js中文教程》

Go 语言已立足主流,编程语言排行榜24 年 11 月

Go语言概述 Go语言,简称Golang,是由Google的Robert Griesemer、Rob Pike和Ken Thompson在2007年设计,并于2009年11月正式宣布推出的静态类型、编译型开源编程语言。Go语言以其提高编程效率、软件构建速度和运行时性能的设计目标,…

zookeeper之节点基本操作

ZooKeeper是一个分布式协调服务,它的节点操作包括创建、查询、更新、删除等,以下是ZooKeeper节点的基本操作介绍: 1. 创建节点 持久节点(Persistent Node) 含义:持久节点是ZooKeeper中最基本的节点类型。创建后,除非显式删除,否则它将一直存在于ZooKeeper树中,即使创…

js | 作用域

前置知识 作用域 const对象怎么禁止修改 方法一: Object.freeze方法二:defineProperty递归,对于每个节点都有:writable:false const obj{a1:{b1:{c1:c1}},a2:{b1:{c1:c2},b2:[]}, }// solution1: Object.freeze(obj) // Objec…

半导体制造技术导论(第二版)萧宏 第二章集成电路工艺介绍答案

本章要求 1. 成品率的概念 整体成品率是指通过最后测试的良好芯片总数与生产所有晶圆上的晶粒总数的比值 2. 成品率的重要性 成品率决定一个IC芯片制造厂赔钱还是赚钱3. 描述一个无尘室的基本结构 4. 说明无尘室协议规范的重要性 严格遵守无尘室协议规范很重要&#xff0…