数据透视图是一种强大的数据可视化工具,能够帮助用户对数据透视表中的数据进行图表化展示。通过数据透视图,用户可以快速从海量数据中提炼出关键信息,识别趋势,并基于数据做出明智的决策。无论是销售数据分析、业绩评估,还是其他复杂数据的展示,数据透视图都能够以动态的方式呈现数据的整体概况和细节。在本文中,我们将演示如何使用 Spire.XLS for Python 和 Python 在 Excel 中创建数据透视图。
安装 Spire.XLS for Python
本教程需要 Spire.XLS for Python 和 plum-dispatch v1.7.4。您可以通过以下 pip 命令将它们轻松安装到 Windows 中。
pip install Spire.XLS
如果您不确定如何安装,请参考此教程: 如何在 Windows 中安装 Spire.XLS for Python
Python 在 Excel 中创建数据透视图
Spire.XLS for Python 提供了 Worksheet.Charts.Add(pivotChartType:ExcelChartType, pivotTable:IPivotTable) 方法,支持基于 Excel 中的特定数据透视表创建数据透视图。详细步骤如下:
- 创建 Workbook 类的对象。
- 使用 Workbook.LoadFromFile() 方法加载 Excel 文件。
- 使用 Workbook.Worksheets[index] 属性获取 Excel 文件中的特定工作表。
- 使用 Worksheet.PivotTables[index] 属性获取工作表中的特定数据透视表。
- 使用 Worksheet.Charts.Add(pivotChartType:ExcelChartType, pivotTable:IPivotTable) 方法向工作表添加数据透视图。
- 设置数据透视图的位置和标题。
- 使用 Workbook.SaveToFile() 方法保存生成的文件。
- Python
from spire.xls import *
from spire.xls.common import *
# 创建 Workbook 对象
workbook = Workbook()
# 加载 Excel 文件
workbook.LoadFromFile("示例.xlsx")
# 获取第一个工作表
sheet = workbook.Worksheets[0]
# 获取工作表中的第一个数据透视表
pivotTable = sheet.PivotTables[0]
# 基于数据透视表创建数据透视图
pivotChart = sheet.Charts.Add(ExcelChartType.ColumnClustered, pivotTable)
# 设置图表位置
pivotChart.TopRow = 1
pivotChart.LeftColumn = 11
pivotChart.RightColumn = 20
pivotChart.BottomRow = 15
# 将图表标题设置为空
pivotChart.ChartTitle = ""
# 保存生成的文件
workbook.SaveToFile("创建数据透视图.xlsx", ExcelVersion.Version2013)
workbook.Dispose()
Python 显示或隐藏 Excel 数据透视图的字段按钮
你可以使用 Spire.XLS for Python 在数据透视图中显示或隐藏以下字段按钮:
- 所有字段按钮
- 报告筛选字段按钮
- 图例字段按钮
- 轴字段按钮
- 数值字段按钮
详细步骤如下:
- 创建 Workbook 类的对象。
- 使用 Workbook.LoadFromFile() 方法加载 Excel 文件。
- 使用 Workbook.Worksheets[index] 属性获取 Excel 文件中的特定工作表。
- 使用 Worksheet.PivotTables[index] 属性获取工作表中的特定数据透视表。
- 使用 Worksheet.Charts.Add(pivotChartType:ExcelChartType, pivotTable:IPivotTable) 方法向工作表添加数据透视图。
- 设置数据透视图的位置和标题。
- 使用 Chart.DisplayAxisFieldButtons 和 Chart.DisplayValueFieldButtons 等属性隐藏数据透视图中的轴字段按钮和数值字段按钮等。
- 使用 Workbook.SaveToFile() 方法保存生成的文件。
- Python
from spire.xls import *
from spire.xls.common import *
# 创建 Workbook 对象
workbook = Workbook()
# 加载 Excel 文件
workbook.LoadFromFile("示例.xlsx")
# 获取第一个工作表
sheet = workbook.Worksheets[0]
# 获取工作表中的第一个数据透视表
pivotTable = sheet.PivotTables[0]
# 基于数据透视表创建数据透视图
pivotChart = sheet.Charts.Add(ExcelChartType.ColumnClustered, pivotTable)
# 设置图表位置
pivotChart.TopRow = 1
pivotChart.LeftColumn = 11
pivotChart.RightColumn = 20
pivotChart.BottomRow = 15
# 将图表标题设置为空
pivotChart.ChartTitle = ""
# 隐藏特定字段按钮
pivotChart.DisplayAxisFieldButtons = False
pivotChart.DisplayValueFieldButtons = False
# pivotChart.DisplayLegendFieldButtons = False
# pivotChart.ShowReportFilterFieldButtons = False
# pivotChart.DisplayEntireFieldButtons = False
# 保存生成的文件
workbook.SaveToFile("隐藏字段按钮.xlsx", ExcelVersion.Version2013)
workbook.Dispose()
Python 给 Excel 数据透视图系列设置格式
当使用 Spire.XLS for Python 基于数据透视表生成数据透视图时,数据透视图的系列不会自动创建。你需要向数据透视图添加系列,然后再应用所需的格式。详细步骤如下:
- 创建 Workbook 类的对象。
- 使用 Workbook.LoadFromFile() 方法加载 Excel 文件。
- 使用 Workbook.Worksheets[index] 属性获取 Excel 文件中的特定工作表。
- 使用 Worksheet.PivotTables[index] 属性获取工作表中的特定数据透视表。
- 使用 Worksheet.Charts.Add(pivotChartType:ExcelChartType, pivotTable:IPivotTable) 方法向工作表添加数据透视图。
- 设置数据透视图的位置和标题。
- 使用 Chart.Series.Add() 方法向数据透视图添加系列,然后对系列应用所需的格式。
- 使用 Workbook.SaveToFile() 方法保存生成的文件。
- Python
from spire.xls import *
from spire.xls.common import *
# 创建 Workbook 对象
workbook = Workbook()
# 加载 Excel 文件
workbook.LoadFromFile("示例.xlsx")
# 获取第一个工作表
sheet = workbook.Worksheets[0]
# 获取工作表中的第一个数据透视表
pivotTable = sheet.PivotTables[0]
# 基于数据透视表创建数据透视图
pivotChart = sheet.Charts.Add(ExcelChartType.ColumnClustered, pivotTable)
# 设置图表位置
pivotChart.TopRow = 1
pivotChart.LeftColumn = 11
pivotChart.RightColumn = 20
pivotChart.BottomRow = 15
# 将图表标题设置为空
pivotChart.ChartTitle = ""
# 添加图表系列
series = pivotChart.Series.Add(ExcelChartType.ColumnClustered)
# 设置数据条的宽度
series.GetCommonSerieFormat().GapWidth = 10
# series.GetCommonSerieFormat().Overlap = 100
# 保存生成的文件
workbook.SaveToFile("设置数据透视图系列格式.xlsx", ExcelVersion.Version2013)
workbook.Dispose()
申请临时 License
如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。获取有效期 30 天的临时许可证。