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')
相关推荐
踏着七彩祥云的小丑3 小时前
pytest——Mark标记
开发语言·python·pytest
Dream of maid3 小时前
Python12(网络编程)
开发语言·网络·php
W23035765734 小时前
经典算法:最长上升子序列(LIS)深度解析 C++ 实现
开发语言·c++·算法
Y4090014 小时前
【多线程】线程安全(1)
java·开发语言·jvm
不爱吃炸鸡柳4 小时前
Python入门第一课:零基础认识Python + 环境搭建 + 基础语法精讲
开发语言·python
minji...5 小时前
Linux 线程同步与互斥(三) 生产者消费者模型,基于阻塞队列的生产者消费者模型的代码实现
linux·运维·服务器·开发语言·网络·c++·算法
Dxy12393102165 小时前
Python基于BERT的上下文纠错详解
开发语言·python·bert
SiYuanFeng6 小时前
Colab复现 NanoChat:从 Tokenizer(CPU)、Base Train(CPU) 到 SFT(GPU) 的完整踩坑实录
python·colab
wjs20247 小时前
JavaScript 语句
开发语言