【发布时间】:2019-08-25 01:26:30
【问题描述】:
首先很抱歉我的英语不好,因为它不是第一语言。 我最近开始学习python,我正在尝试开发一个“简单”的程序,但是我遇到了一个问题。
我正在使用 xlwings 来修改 Excel 并与之交互。我想要实现(或知道是否可能)是:
我有 excel 查看数据并绘制图表。但是,此图有时例如有 20 个 X 轴值,而在其他情况下,假设 X 轴有 10 个值,因此留下 10 个#NA 空白空间。基于此,我想通过更改图形的范围来调整图形以仅显示 10 个值。
函数get_prod_hours()查看我想要X轴上有多少个值:
def get_prod_hours():
"""From the input gets the production hours to adapt the graphs"""
dt = wb.sheets['Calculatrice']
return dt.range('E24').value
根据从函数中得到的值,我必须修改图表上的值范围(通过减少它)。
解决方案,例如从头开始创建图表是不行的,因为我只想修改图表的范围,因为 Excel 文件是我公司的“标准”。
我希望是这样的:
Excel 中的 A 列的值:1, 2, 3, 4, 5 并从 get_prod_hours() 获得值 5,因此我的图表将只有 5 个点,而不是例如 6 个点,其中一个是 #NA。
非常感谢,对于文字墙感到抱歉。
【问题讨论】:
-
与其构建程序化解决方案,尤其是 Excel 外部解决方案,不如使用完善的协议来使用 Excel 函数使图表数据动态化。我在Dynamic Charts 上的教程中有一个简单的示例和一些链接。