python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > Python迷你图

Python使用Spire.XLS进行插入,修改和删除迷你图

作者:E-iceblue

这篇文章主要为大家详细介绍如何使用 Spire.XLS for Python 在 Excel 中插入、修改和删除迷你图,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下

在日常工作中,你是否遇到过这些情况:需要分析图表背后的原始数据却无从下手?图表尺寸不合适遮挡了重要信息?图表位置不合理影响报告布局?

在 Excel 中,迷你图是一种紧凑而高效的图表类型,它通常嵌入在单元格内,用于快速直观地展示数据趋势。这种图表非常适合用于显示单元格区域中的数据变化,尤其在处理大量数据时,能够帮助我们轻松识别模式和趋势。本文将详细介绍如何使用 Spire.XLS for Python 在 Excel 中插入、修改和删除迷你图

插入迷你图

假设你现在有一个工作簿,其中某个工作表需要你绘制图表来描述数据的趋势。然而,你发现该工作表数据量庞大,组织结构复杂,直接添加常规图表可能会导致工作簿布局混乱。 此时,迷你图便成为了一个理想的替代方案,它占用空间小,同时能清晰地显示数据趋势。

迷你图是 Excel 中一种独特的图表类型,因为它不像其他图表那样可能占用多个单元格区域,而是仅占用一个单元格,特别适合在可用空间不足时使用。

Spire.XLS for Python 支持向 Excel 工作表中插入三种迷你图:

关键步骤如下:

from spire.xls import *
from spire.xls.common import *

# 创建Workbook对象
workbook = Workbook()
# 加载一个Excel文件
workbook.LoadFromFile("Microsoft Excel 工作簿.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()

上述代码在现有工作表的 N3:N5 区间内添加了3个迷你图,分别是折线迷你图、柱形迷你图和盈亏迷你图,并分别为它们设置了样式。

在 Excel 表格中插入迷你图

修改迷你图

仅仅插入迷你图还不足以完全反映数据的真实情况。你可能需要修改其样式、颜色或数据源,以使其准确显示你所需的信息。

Python 提供了 SparklineGroupSparklineType 属性,让你可以在 Python 环境下轻松修改 Excel 工作表中迷你图的类型和数据源。

关键步骤如下:

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()

上述代码成功将N3单元格的折线迷你图修改为了柱形迷你图,同时没有影响到其他的任何单元格。

通过 Python 在 Excel 中修改迷你图

删除迷你图

有时,为了简化报表或重新组织数据,你可能需要删除 Excel 工作表中的迷你图。

Spire.XLS for Python 提供了 **Remove()**方法来删除单个迷你图或整个迷你图组。

关键步骤如下:

from spire.xls import *
from spire.xls.common import *

# 创建Workbook对象
workbook = Workbook()
# 加载一个Excel文件
workbook.LoadFromFile("添加迷你图.xlsx")

# 获取第一个工作表
sheet = workbook.Worksheets[0]

# 获取第一个迷你图组
sparklineGroup = sheet.SparklineGroups[0]

# 删除第一个迷你图组中的第一个迷你图
sparklines = sparklineGroup[0]
sparklines.Remove(sparklines[0])

# 保存结果文档
workbook.SaveToFile("删除迷你图.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

上述代码将可以把工作表内的第一个迷你图删除,不影响它引用的数据源或其他迷你图。

结语

本文详细介绍了如何使用 Spire.XLS for Python 在 Excel 中进行迷你图的插入、修改和删除操作。通过这些功能,你可以更灵活地处理和展示数据,提升数据分析报告的专业性和可读性。

迷你图作为一种轻量级的数据可视化工具,在有限的空间内提供了强大的趋势洞察力,是 Excel 报表制作中不可或缺的一部分。

到此这篇关于Python使用Spire.XLS进行插入,修改和删除迷你图的文章就介绍到这了,更多相关Python迷你图内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文