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')
相关推荐
眠りたいです11 小时前
现代C++:C++17中的新库特性
开发语言·c++·c++20·c++17
devnullcoffee11 小时前
亚马逊 Buy Box 数据采集完全指南(2026):Python 实战 + Pangolinfo API
开发语言·python·亚马逊数据采集·亚马逊数据 api·pangolinfo api·亚马逊 buy box 数据·亚马逊数据采集软件
imDwAaY11 小时前
贝叶斯网络到粒子滤波Python算法实现 CS188 Proj4 学习笔记
网络·人工智能·笔记·python·学习·算法
sleven fung11 小时前
Whisper库
开发语言·人工智能·python·算法·ai·whisper
ServBay11 小时前
2026年重新定义 Python 开发工作流的8个现代化工具
后端·python
天若有情67311 小时前
【C++趣味实战】仿写Burp代理逻辑!自定义可控迭代器:拦截Intercept/放行Forward/重放Repeater全实现
java·开发语言·c++
l1t11 小时前
DeepSeek总结的使用实体-组件-系统和基于存在性处理进行Python编程37-38
开发语言·python
迷藏49411 小时前
Python+DuckDB:轻量级BI流水线实战
java·开发语言·python·原型模式
咋吃都不胖lyh11 小时前
短期记忆和长期记忆都存 MySQL
android·java·开发语言
乘凉~11 小时前
一键获取Youtube播放列表视频里的标题和链接
windows·python