首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >xlwings中的图表对象

xlwings中的图表对象
EN

Stack Overflow用户
提问于 2018-08-30 22:19:22
回答 1查看 2.5K关注 0票数 0

代码片段来自于xlwings 这里的正式文档,这是我的问题的设置。

代码语言:javascript
复制
import xlwings as xw
sht = xw.Book().sheets[0]
sht.range('A1').value = [['Foo1', 'Foo2'], [1, 2]]
chart = sht.charts.add()
chart.set_source_data(sht.range('A1').expand())
chart.chart_type = 'line'
chart.name

运行print(chart.api)将输出下面的元组。

代码语言:javascript
复制
(<xlwings._xlwindows.COMRetryObjectWrapper at 0x1fcd60c9a90>, <xlwings._xlwindows.COMRetryObjectWrapper at 0x1fcd60c9f28>)

如果我想使用api接口属性来做一些基本的图表操作,比如删除图例并添加一个标题,那么只有当我对chart.api[1]这样做时,它才能工作。例如,下面的代码工作得很好。它移除图表图例并添加一个标题。

代码语言:javascript
复制
chart.api[1].HasLegend = 0
chart.api[1].SetElement(2)
chart.api[1].ChartTitle.Text = 'A title'

但是,我对chart.api[0]所做的任何事情都会产生一个错误(例如,print(chart.api[0].HasLegend)会产生一个错误)。我不明白这是什么类型的对象,或者它是如何有用的。我在官方文件里找不到任何关于这个的东西。

最后,我的问题是:上面索引0处的对象是什么?拜托,帮我摸摸它是什么。

EN

回答 1

Stack Overflow用户

发布于 2018-09-13 16:40:15

还有一篇文章在索引0处回答了您关于对象的问题。

在Xlwing中设置图表名

表达式chart.api返回一个包含两个COM包装器的元组。我不太清楚为什么会有两个COM包装器,但似乎需要第二个包装器才能访问图表。因此这里使用了chart.api1。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52106083

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档