Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用pythons xlsxwriter模块创建的Excel工作表运行太慢_Excel - Fatal编程技术网

使用pythons xlsxwriter模块创建的Excel工作表运行太慢

使用pythons xlsxwriter模块创建的Excel工作表运行太慢,excel,Excel,我使用xlsxwriterpython模块创建了一个包含2个系列的柱状图,代码如下。在Microsoft Excel中打开文件时,导航速度很慢 def create_2_series_column_chart(self, sheet_obj, series_1, series_2, chart_name, x_axis_name, y_axis_name, location): chart1 = self.output_workbook.add_chart({'type': 'colum

我使用
xlsxwriter
python模块创建了一个包含2个系列的柱状图,代码如下。在Microsoft Excel中打开文件时,导航速度很慢

def create_2_series_column_chart(self, sheet_obj, series_1, series_2, chart_name, x_axis_name, y_axis_name, location):
    chart1 = self.output_workbook.add_chart({'type': 'column'})
    chart1.add_series(series_1)
    chart1.add_series(series_2)
    chart1.set_title({'name': chart_name})
    chart1.set_x_axis({'name': x_axis_name})
    chart1.set_y_axis({'name': y_axis_name})

    chart1.set_style(42)

    sheet_obj.insert_chart(location, chart1, {'x_offset': 25, 'y_offset': 10})


    series_1 = {
        'name':       ["MY_SHEET", 2, 1],
        'categories': ['MY_SHEET', 3, 0, 2+num_days_in_month, 0],
        'values':     ['MY_SHEET', 3, 15+2*ix+1, 2+num_days_in_month, 15+2*ix+1],
        }

    series_2 = {
        'name':       ["MY_SHEET", 2, 2],
        'categories': ['MY_SHEET', 3, 0, 2+num_days_in_month, 0],
        'values':     ['MY_SHEET', 3, 16+2*ix+1, 2+num_days_in_month, 16+2*ix+1],
        #'data_labels': {'value': True, 'position': 'top'}
        }

location = ["A", "J", "S", "AB"][ix]+ "54"
self.create_2_series_column_chart(self.my_worksheet, series_1, series_2, "CHARTS", 'days', 'count', location)

有什么想法吗?

XlsxWriter创建图表的方式与Excel完全相同,并且有很多方法可以验证这一点。所以,理论上,XlsxWriter所做的任何事情都不会产生慢图表。此外,没有其他人报告过任何类似的问题,XlsxWriter中的图表功能被大量使用

尽管如此,您仍然清楚地看到了一个问题,因此这里有一些问题需要研究:

  • 检查图表用于绘制数据的数据范围。在Excel中,右键单击图表并选择“选择数据”。然后验证所绘制的数据是否正确。特别是查找意外的长数据范围或包含不正确数据的数据范围
  • 将文件保存在Excel中,关闭它,然后重新打开它。在这种情况下,您是否看到相同的行为 如果这两种方法都没有突出问题或给你进一步的线索,那么你可以。然而,这将需要一个小的、完整的、工作的例子来证明这个问题。像上面这样的代码片段不足以找到这样的问题


    另外,我是XlsxWriter的作者

    多慢就是太慢?你做过分析吗?你知道瓶颈在哪一行代码上吗?代码本身运行速度并不慢。图表有问题。创建excel文件后,我打开excel文件,转到包含图表的工作表。但是在该工作表中导航太慢。使用
    xlsxwriter
    或Excel导航?使用Excel导航有关Excel的问题在StackOverflow上是离题的。先生,很抱歉打扰您,我注意到我的代码中有一个错误,似乎我已经在同一个位置上创建了相同的图表,在
    for
    循环中,一个在另一个之上创建了100次。这就是床单跑得太慢的原因。直到我把顶部的图表拖到另一个位置,我才注意到它。最好的评价但是还有一件事,当你在Excel中点击一个图表系列时,数据范围会用蓝色/绿色框突出显示,对吗?使用xlsxwriter模块创建的图表不会出现这种情况。有什么想法吗?很高兴你把它解决了。使用xlsxwriter模块创建的图表不会出现这种情况。是的。你不能在评论中发布截图,但如果我可以的话,它看起来就像你描述的那样。试试文档中的一个。正如我上面所说,XlsxWriter图表与Excel图表完全相同,其行为应该相同。