python办公自动化——(二)替换PPT文档中图形数据-柱图

效果:

数据替换前 : 替换数据后:

实现代码

python 复制代码
import collections.abc
from pptx import Presentation
from pptx.util import Cm,Pt
import pyodbc
import pandas as pd
from pptx.chart.data import CategoryChartData
from  pptx.enum.chart import XL_TICK_LABEL_POSITION
import datetime
from dateutil.relativedelta import relativedelta
from pptx.dml.color import RGBColor
import os
from openpyxl import load_workbook
import logging
import matplotlib as plt
import datetime
from datetime import timedelta
import calendar
from lxml import etree
from pptx.oxml.ns import qn
import numpy as np
from pptx.enum.text import PP_ALIGN
plt.rcParams ['font.sans-serif']= ['Microsoft YaHei'] 
import datetime,calendar
import warnings
warnings.filterwarnings('ignore')

path='E:\\13 python 下侧双x轴折线图\\'
prs = Presentation(path+'ppt图形数据替换.pptx')
data_time=pd.read_excel(path+"数据.xlsx",sheet_name='sheet1')

ppt_8=prs.slides[8].shapes #获取ppt第8页
chart_data_8=CategoryChartData()
ser1=data_time.iloc[[38,37,39],2] # 取数据
ser2=data_time.iloc[[38,37,39],3]
# print(route_tk)

x=['第一季度','第二季度','第三季度']
chart_data_8.categories=x
chart_data_8.add_series(name='系列一',values=ser1,number_format='0.0')
chart_data_8.add_series(name='系列二',values=ser2,number_format='0.0')
group_1=ppt_8[0]
chart_1=group_1
catrgory_axis_1=chart_1.chart.category_axis
catrgory_axis_1.tick_label_position=XL_TICK_LABEL_POSITION.LOW
catrgory_axis_1.tick_labels.font.size=Pt(14)
chart_1.chart.replace_data(chart_data=chart_data_8)

prs.save(path+'replace_chartdata_bar0528.pptx')
相关推荐
laplace01236 分钟前
Part3 RAG文档切分
笔记·python·中间件·langchain·rag
dhdjjsjs9 分钟前
Day59 PythonStudy
python
智商偏低10 分钟前
abp PermissionDefinitionManager源码解析
开发语言·前端·javascript
brent42310 分钟前
DAY48 Grad-CAM与Hook函数
python
闲人编程14 分钟前
商品管理与库存系统
服务器·网络·数据库·python·api·数据模型·codecapsule
亚历山大海23 分钟前
PHP HTML 实体(HTML Entities)没有被正确解码导致< 和 δ 等字符被转换
开发语言·html·php
ServBay23 分钟前
8 个 Python 自动化脚本让你告别重复劳动
后端·python
CSDN_RTKLIB24 分钟前
C++取余符号%
开发语言·c++
C++chaofan27 分钟前
Java 并发编程:synchronized 优化原理深度解析
java·开发语言·jvm·juc·synchronized·
测试老哥29 分钟前
2026最新软件测试面试热点问题(含答案+文档)
自动化测试·软件测试·python·测试工具·面试·职场和发展·测试用例