Unable to load xlsx containing charts
Created originally on Bitbucket by Nithinraj Mohanraj
This issue is similar to #1002 (closed), but reproducible in the version 3.0.3
I tried to read the attached workbook using openpyxl 3.0.3 and got the following error. Note that the file gets loaded when I delete the chart. Could you please help resolve the issue?
Python version - 3.7.1rc1
Here is the error message observed while loading the file:
Traceback (most recent call last):
File "C:/Users/user/Documents/Repos/analyser/power_analyser/test_run.py", line 32, in <module>
reporter = XLSReporter(vstepper=vstep, hstepper=hstep, meter=pmeter, progress_cnt=test_iteration_count)
File "C:\Users\user\Documents\Repos\analyser\power_analyser\xls_reporter.py", line 20, in init
self.load_xls()
File "C:\Users\user\Documents\Repos\analyser\power_analyser\xls_reporter.py", line 37, in load_xls
self.wb = openpyxl.load_workbook(filename=dest_file)
File "C:\Users\user\AppData\Local\Programs\Python\Python37\lib\site-packages\openpyxl\reader\excel.py", line 314, in load_workbook
reader.read()
File "C:\Users\user\AppData\Local\Programs\Python\Python37\lib\site-packages\openpyxl\reader\excel.py", line 279, in read
self.read_worksheets()
File "C:\Users\user\AppData\Local\Programs\Python\Python37\lib\site-packages\openpyxl\reader\excel.py", line 254, in read_worksheets
charts, images = find_images(self.archive, rel.target)
File "C:\Users\user\AppData\Local\Programs\Python\Python37\lib\site-packages\openpyxl\reader\drawings.py", line 39, in find_images
cs = get_rel(archive, deps, rel.id, ChartSpace)
File "C:\Users\user\AppData\Local\Programs\Python\Python37\lib\site-packages\openpyxl\packaging\relationship.py", line 168, in get_rel
obj = cls.from_tree(tree)
File "C:\Users\user\AppData\Local\Programs\Python\Python37\lib\site-packages\openpyxl\descriptors\serialisable.py", line 87, in from_tree
obj = desc.expected_type.from_tree(el)
File "C:\Users\user\AppData\Local\Programs\Python\Python37\lib\site-packages\openpyxl\descriptors\serialisable.py", line 87, in from_tree
obj = desc.expected_type.from_tree(el)
File "C:\Users\user\AppData\Local\Programs\Python\Python37\lib\site-packages\openpyxl\chart\plotarea.py", line 140, in from_tree
self = super(PlotArea, cls).from_tree(node)
File "C:\Users\user\AppData\Local\Programs\Python\Python37\lib\site-packages\openpyxl\descriptors\serialisable.py", line 87, in from_tree
obj = desc.expected_type.from_tree(el)
File "C:\Users\user\AppData\Local\Programs\Python\Python37\lib\site-packages\openpyxl\descriptors\serialisable.py", line 103, in from_tree
return cls(**attrib)
File "C:\Users\user\AppData\Local\Programs\Python\Python37\lib\site-packages\openpyxl\chart\pie_chart.py", line 110, in init
self.holeSize = holeSize
File "C:\Users\user\AppData\Local\Programs\Python\Python37\lib\site-packages\openpyxl\descriptors\nested.py", line 35, in set
super(Nested, self).set(instance, value)
File "C:\Users\user\AppData\Local\Programs\Python\Python37\lib\site-packages\openpyxl\descriptors\base.py", line 107, in set
raise ValueError('Min value is {0}'.format(self.min))
ValueError: Min value is 1
Process finished with exit code 1
Attachments: summary_report.xlsx