在xlwings中,可以使用charts.add()方法来创建一个新的图表对象。然后,可以使用set_source_data()方法来设置图表的数据源范围。

若要设置多个不相邻的范围,长度也不同的数据源,可以将这些范围合并成一个范围,并将其作为参数传递给set_source_data()方法。

以下是一个示例代码片段,演示如何在xlwings中设置多个不相邻的范围作为图表的数据源:

import xlwings as xw

# 打开Excel应用程序
app = xw.App()

# 打开工作簿
wb = app.books.open('example.xlsx')

# 选择工作表
sheet = wb.sheets['Sheet1']

# 创建图表对象
chart = sheet.charts.add()

# 设置数据源范围
data_range1 = sheet.range('A1:B10')
data_range2 = sheet.range('D1:E5')
data_range3 = sheet.range('G1:H20')

# 合并多个范围
merged_range = xw.Range(data_range1.address + ',' + data_range2.address + ',' + data_range3.address)

# 设置图表的数据源
chart.set_source_data(merged_range)

# 关闭工作簿
wb.close()

# 关闭Excel应用程序
app.quit()

在上述示例中,我们打开了一个名为'example.xlsx'的工作簿,并选择了名为'Sheet1'的工作表。然后,我们创建了一个图表对象,并设置了三个不相邻的数据源范围。通过将这些范围合并成一个范围,我们将其作为参数传递给set_source_data()方法,从而设置图表的数据源。

请根据您的实际需求修改示例代码中的数据源范围和工作簿文件名

python xlwings 使用 chart = sheetchartsadd和chartset_source_data设置多个不相邻的范围长度也不同

原文地址: https://www.cveoy.top/t/topic/iNJR 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录