我使用
xlsxwriter
作为传递给 engine
的 pandas.ExcelWriter
。我有一个 DataFrame,我通过我之前获得的 writer 对其调用 to_excel()
。然后,我尝试使用 get_worksheet_by_name()
抓取工作表,这似乎效果很好,然后调用 worksheet.insert_image()
插入图像。
这不起作用。我假设
to_excel()
会导致工作表被写入,因此稍后无法进行突变。它是否正确?如果是这样,我是否必须有一个手动过程来读取 DataFrame 中的每个单元格并使用 xlsxwriter
自己将其写入 Excel,以便我也可以执行图像操作?或者有没有办法告诉to_excel()
不要写完纸?
此代码示例将插入数据框和图像
工作表只是;
worksheet = writer.sheets['Sheet1']
import pandas as pd
data_frame = pd.DataFrame({'Fruits': ['Appple', 'Banana', 'Mango',
'Dragon Fruit', 'Musk melon', 'grapes'],
'Sales in kg': [20, 30, 15, 10, 50, 40]})
with pd.ExcelWriter("path_to_file.xlsx") as writer:
data_frame.to_excel(writer,
sheet_name="Sheet1")
writer.sheets['Sheet1'].insert_image("F2", "pic.png")