CoCalc provides the best real-time collaborative environment for Jupyter Notebooks, LaTeX documents, and SageMath, scalable from individual users to large groups and classes!
CoCalc provides the best real-time collaborative environment for Jupyter Notebooks, LaTeX documents, and SageMath, scalable from individual users to large groups and classes!
Path: blob/master/Day46-60/50.制作报表.md
Views: 729
制作报表
导出Excel报表
报表就是用表格、图表等格式来动态显示数据,所以有人用这样的公式来描述报表:
有很多的三方库支持在Python程序中写Excel文件,包括xlwt
、xlwings
、openpyxl
、xlswriter
等,其中的xlwt虽然只支持写xls格式的Excel文件,但在性能方面的表现还是不错的。下面我们就以xlwt
为例,来演示如何在Django项目中导出Excel报表。
安装xlwt
。
导出包含所有老师信息的Excel表格的视图函数。
映射URL。
导出PDF报表
在Django项目中,如果需要导出PDF报表,可以借助三方库reportlab
来生成PDF文件的内容,再将文件的二进制数据输出给浏览器并指定MIME类型为application/pdf
,具体的代码如下所示。
关于如何用reportlab
定制PDF报表的内容,可以参考reportlab的官方文档。
生成前端统计图表
如果项目中需要生成前端统计图表,可以使用百度的ECharts。具体的做法是后端通过提供数据接口返回统计图表所需的数据,前端使用ECharts来渲染出柱状图、折线图、饼图、散点图等图表。例如我们要生成一个统计所有老师好评数和差评数的报表,可以按照下面的方式来做。
映射URL。
使用ECharts生成柱状图。
运行效果如下图所示。