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')
相关推荐
萧鼎1 小时前
Python并发编程库:Asyncio的异步编程实战
开发语言·数据库·python·异步
学地理的小胖砸1 小时前
【一些关于Python的信息和帮助】
开发语言·python
疯一样的码农1 小时前
Python 继承、多态、封装、抽象
开发语言·python
^velpro^1 小时前
数据库连接池的创建
java·开发语言·数据库
秋の花1 小时前
【JAVA基础】Java集合基础
java·开发语言·windows
小松学前端1 小时前
第六章 7.0 LinkList
java·开发语言·网络
可峰科技1 小时前
斗破QT编程入门系列之二:认识Qt:编写一个HelloWorld程序(四星斗师)
开发语言·qt
全栈开发圈1 小时前
新书速览|Java网络爬虫精解与实践
java·开发语言·爬虫
面试鸭1 小时前
离谱!买个人信息买到网安公司头上???
java·开发语言·职场和发展
小白学大数据1 小时前
JavaScript重定向对网络爬虫的影响及处理
开发语言·javascript·数据库·爬虫