我的目标是从XlsxWriter在工作表中创建图表,而图表中的数据不在工作表的任何位置(我不想引用单元格)。出于法律原因,本书中无法提供数据。
或者,如果有一种方法可以将数据写入单元格,对数据进行图形处理,然后删除单元格引用,以便我可以拥有不引用单元格的图形,那么我也会对此开放。我知道有一些方法可以在excel中完成。
我尝试用整数列表(我要绘制的数据)替换“类别”和“值”参数,但是由于缺少单元格引用而出现错误。 (请参见下面的功能)。
# Builds a chart with top left corner at row_start, col_start (zero
# indexed).
# data[data_input[i][0]]['history'][0] is a list of dates.
# data[data_input[i][0]]['history'][1] is a list of values for those dates.
chart = workbook.add_chart({'type': 'line'})
for i in range(len(data_input)):
chart.add_series({
'name': title,
'categories': data[data_input[i][0]]['history'][0],
'values': data[data_input[i][0]]['history'][1],
'line': {'color': colors[i], 'width': 1}
})
worksheet.insert_chart(row_start, col_start, chart)
TypeError:xl_range_formula()接受5个位置参数,但给出了261个
答案 0 :(得分:1)
我的目标是从XlsxWriter在工作表中创建图表,而图表中的数据不在工作表的任何位置。出于法律原因,该数据在本书中不可用。
那不可能。
在Excel中,可以直接从数据对话框中提供的数据绘制图形,而无需引用单元格。但是,XlsxWriter不支持该选项,它也不会以任何方式隐藏您的数据,因为任何人都可以进入对话框并查看数据。另外,任何人都可以解压缩文件并查看数据。
此外,任何人都可以将鼠标悬停在图表中的数据上,并查看其生成的值。
或者,如果有一种方法可以将数据写入单元格,对该数据进行图形处理,然后删除单元格引用,那么我可以得到一个不引用单元格的图形,
否,出于与上述相同的原因。
退后一步,尝试找出仅在Excel中是否可以通过任何方式进行操作(可能是通过隐藏带有源数据的工作表,然后通过锁定和密码保护文件来实现)。如果有办法在Excel中执行此操作,那么您就会知道要在Python中执行此操作的问题。
作为建议,一种实现方法是创建图表图像并将其插入Excel。这样就不会链接到原始数据。