在 Excel 中,迷你图是一种紧凑的图表类型,它通常嵌入在单元格内,用于快速展示数据趋势。这种图表非常适合用于显示单元格区域中的数据变化,特别是在处理大量数据时,可以帮助我们轻松识别模式和趋势。在本文中,我们将介绍如何使用 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 支持向 Excel 工作表中插入三种迷你图,它们分别是:
- 折线迷你图:显示数据随时间的变化趋势,适用于展示连续数据的变化。
- 柱形迷你图:以竖条的形式展示数据,适合用于比较一系列数值之间的大小。
- 盈亏迷你图:用于展示二进制结果(如盈亏、胜负等),通常只有两个值(正值或负值)会显示为不同的颜色。
以下是使用 Spire.XLS for Python 向 Excel 工作表插入迷你图的详细步骤:
- 创建 Workbook 类的对象并使用 Workbook.LoadFromFile() 方法加载 Excel 文件。
- 使用 Workbook.Worksheets[index] 属性获取特定工作表。
- 使用 Worksheet.SparklineGroups.AddGroup() 方法给工作表添加一个迷你图组。
- 使用 SparklineGroup.SparklineType、SparklineGroup.SparklineColor 和 SparklineGroup.HighPointColor 属性指定迷你图组中迷你图的类型、颜色和最高点的颜色。
- 使用 SparklineGroup.Add() 方法添加一个迷你图集合,然后使用 SparklineCollection.Add() 方法添加迷你图到迷你图集合。
- 使用 Workbook.SaveToFile() 方法保存结果文档。
- Python
from spire.xls import *
from spire.xls.common import *
# 创建Workbook对象
workbook = Workbook()
# 加载一个Excel文件
workbook.LoadFromFile("示例.xlsx")
# 获取第一个工作表
sheet = workbook.Worksheets[0]
# 添加折线迷你图组
sparkline_group1 = sheet.SparklineGroups.AddGroup()
sparkline_group1.SparklineType = SparklineType.Line
# 设置迷你图组的颜色
sparkline_group1.SparklineColor = Color.get_Orange()
# 设置迷你图组最高点的颜色
sparkline_group1.HighPointColor = Color.get_Red()
# 添加迷你图到图组
sparklines1 = sparkline_group1.Add()
sparklines1.Add(sheet.Range["B3:M3"], sheet.Range["N3"])
# 添加柱形迷你图组
sparkline_group2 = sheet.SparklineGroups.AddGroup()
sparkline_group2.SparklineType = SparklineType.Column
# 设置迷你图组的颜色
sparkline_group2.SparklineColor = Color.get_BlueViolet()
# 设置迷你图组最高点的颜色
sparkline_group2.HighPointColor = Color.get_Red()
# 添加迷你图到图组
sparklines2 = sparkline_group2.Add()
sparklines2.Add(sheet.Range["B4:M4"], sheet.Range["N4"])
# 添加盈亏迷你图组
sparkline_group3 = sheet.SparklineGroups.AddGroup()
sparkline_group3.SparklineType = SparklineType.Stacked
# 设置迷你图组的颜色
sparkline_group3.SparklineColor = Color.get_DarkBlue()
# 设置迷你图组最高点的颜色
sparkline_group3.HighPointColor = Color.get_Red()
# 添加迷你图到图组
sparklines3 = sparkline_group3.Add()
sparklines3.Add(sheet.Range["B5:M5"], sheet.Range["N5"])
# 保存文档
workbook.SaveToFile("添加迷你图.xlsx", ExcelVersion.Version2016)
workbook.Dispose()
Python 在 Excel 中修改迷你图
插入迷你图后,你可以修改其样式、颜色或数据源,以使其显示你需要的信息。以下是使用 Spire.XLS for Python 修改 Excel 工作表中迷你图的类型和数据源的详细步骤:
- 创建 Workbook 类的对象并使用 Workbook.LoadFromFile() 方法加载 Excel 文件。
- 使用 Workbook.Worksheets[index] 属性获取特定工作表。
- 使用 Worksheet.SparklineGroups[index] 属性获取工作表中特定的迷你图组。
- 使用 SparklineGroup.SparklineType 属性修改迷你图组中迷你图的类型。
- 获取迷你图组中第一个迷你图的集合并使用 ISparklines.RefreshRanges() 方法修改迷你图集合的数据源。
- 使用 Workbook.SaveToFile() 方法保存结果文档。
- Python
from spire.xls import *
from spire.xls.common import *
# 创建Workbook对象
workbook = Workbook()
# 加载一个Excel文件
workbook.LoadFromFile("添加迷你图.xlsx")
# 获取第一个工作表
sheet = workbook.Worksheets[0]
# 修改第一个迷你图组中迷你图的类型和数据范围
sparklineGroup = sheet.SparklineGroups[0]
sparklineGroup.SparklineType = SparklineType.Column
sparklines = sparklineGroup[0]
sparklines.RefreshRanges(sheet.Range["B3:G3"], sheet.Range["N3"])
# 保存结果文档
workbook.SaveToFile("修改迷你图.xlsx", ExcelVersion.Version2016)
workbook.Dispose()
Python 在 Excel 中删除迷你图
Spire.XLS for Python 支持删除 Excel 工作表中的特定迷你图,也支持删除整个迷你图组。以下是详细步骤:
- 创建 Workbook 类的对象并使用 Workbook.LoadFromFile() 方法加载 Excel 文件。
- 使用 Workbook.Worksheets[index] 属性获取特定工作表。
- 使用 Worksheet.SparklineGroups[index] 属性获取工作表中特定的迷你图组。
- 使用 Worksheet.SparklineGroups.Remove() 方法删除该迷你图组。或者获取迷你图组中第一个迷你图的集合并删除集合中的第一个迷你图。
- 使用 Workbook.SaveToFile() 方法保存结果文档。
- Python
from spire.xls import *
from spire.xls.common import *
# 创建Workbook对象
workbook = Workbook()
# 加载一个Excel文件
workbook.LoadFromFile("添加迷你图.xlsx")
# 获取第一个工作表
sheet = workbook.Worksheets[0]
# 获取第一个迷你图组
sparklineGroup = sheet.SparklineGroups[0]
# # 从工作表中删除第一个迷你图组
# sheet.SparklineGroups.Remove(sparklineGroup)
# 或删除第一个迷你图组中的第一个迷你图
sparklines = sparklineGroup[0]
sparklines.Remove(sparklines[0])
# 保存结果文档
workbook.SaveToFile("删除迷你图.xlsx", ExcelVersion.Version2016)
workbook.Dispose()
申请临时 License
如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。获取有效期 30 天的临时许可证。