通过熊猫魔术制作的excel电子表格
xl-link的Python项目详细描述
#xllink熊猫
快速入门:https://0hughman0.github.io/xl_link/quick start.html
安装:`pip install xl_link`
xllink旨在在pandas数据框架和excel电子表格之间提供一个强大的接口。
xllink调整dataframe.to_excel方法以返回其自己的xlmap对象。
此xlmap存储有关电子表格中写入数据帧位置的所有信息。
允许您使用大熊猫索引方法,即LOC、ILOC、AT和IAT。xllink使用起来仍然很直观。但是,xlmap不会返回数据帧、序列或标量,而是返回与电子表格中结果位置相对应的xlrange或xlcell。
此外,xlmaps还提供了excel引擎的包装(目前支持xlsxwriter和openpyxl),使在excel中创建图表更加直观。为Excel图表提供类似dataframe.plot的界面。
##图表演示
创建复杂图表非常简单:
>>> f = XLDataFrame(index=('Breakfast', 'Lunch', 'Dinner', 'Midnight Snack'), data={'Mon': (15, 20, 12, 3), 'Tues': (5, 16, 3, 0), 'Weds': (3, 22, 2, 8), 'Thur': (6, 7, 1, 9)}) >>> xlmap = f.to_excel('Chart.xlsx', sheet_name="XLLinked", engine='openpyxl') >>> xl_linked_chart = xlmap.create_chart('bar', title="With xl_link", x_axis_name="Meal", y_axis_name="Calories", subtype='col') >>> xlmap.sheet.add_chart(xl_linked_chart, 'F1') >>> xlmap.writer.save()
制作此图表:
啊![多条形图](https://raw.githubusercontent.com/0Hughman0/xl_link/master/examples/BarExample.png)
##格式化演示
对表格应用条件格式非常简单:
>>> import numpy as np >>> xy_data = XLDataFrame(data={'Y1': np.random.rand(10) * 10, 'Y2': np.random.rand(10) * 10}) >>> xlmap = xy_data.to_excel("ConditionalFormatting.xlsx", engine='xlsxwriter') >>> xlmap.sheet.conditional_format(xlmap.data.range, # position of data within spreadsheet {'type': '3_color_scale', 'min_type': 'num', 'min_value': xlmap.f.min().min(), 'min_color': 'green', 'mid_type': 'num', 'mid_value': xlmap.f.mean().mean(), 'mid_color': 'yellow', 'max_type': 'num', 'max_value': xlmap.f.max().max(), 'max_color': 'red'}) >>> xlmap.writer.save()
啊![条件格式](https://raw.githubusercontent.com/0Hughman0/xl_link/master/examples/ConditionalFormattingExample.png)
查看示例文件夹以获取更多示例!
此软件包使用xlsxwriter在bsd许可证下的实用程序功能,可在此处找到:https://github.com/jmcnamara/XlsxWriter
##兼容性
熊猫>;=0.19xlsxwriter>;=0.9openpyxl>;=2.4
最新测试版本:
熊猫=0.23.4 xlsxwriter==1.0.7-(如果需要,使用openpyxl推荐使用股票图表的潜在问题) openpyxl==2.5.5
版权所有(C)2018 0Hughman0
特此免费授予获得本软件副本和相关文档文件(以下简称“软件”)的任何人使用本软件的权利,包括但不限于使用、复制、修改、合并、发布、分发、再授权和/或出售本软件副本的权利,并在符合以下条件的情况下,允许向其提供软件的人员这样做:
上述版权声明和本许可声明应包含在软件的所有副本或实质性部分中。
<软件>提供“原样”,无任何担保,明示或默示,包括但不限于适销性、适合特定用途和不侵权的保证。在任何情况下,作者或版权持有人均不对任何索赔、损害或其他责任负责,无论是在合同诉讼、侵权诉讼或其他诉讼中,由软件或软件的使用或其他交易引起的、由软件引起的或与之相关的。