功能背景:某项目需要一个功能,需要用浏览器下载一块报表,在报表填充描述性统计语言和描述性统计的统计图片。
环境和标准库准备
电脑环境:win 10 专业版 python 2.7
因条件限制,不使用pip 等方式安装pyecharts ,docx 模块,而是直接使用源码的方式
第三方模块:docx ,pyecharts,pyecharts-javascript,lmlx等
二进制文件:phantomjs
主要框架结构:
Lib –
-docx
-future
-jupyter_echarts_pypkg
-lmlx
-pyecharts_javascripthon
-pyecharts_jupyter_installer
-pyecharts_snapshot
-pyecharts
Phantomjs-lib
-bin
-examples
word_export.py
Phantomjs 的官网:Download PhantomJSphantomjs.org
在官网下载对应的内容放到phantomjs 库中。
l 使用说明
主要实现方式:利用pyecharts 生成图片,而后利用利用docx模块 进行文档组装。
Docx,pyecharts,pyehcarts_snapshot的详细使用请看官方文档。python-docx - python-docx 0.8.10 documentationpython-docx.readthedocs.ioA Python Echarts Plotting Library built with love.pyecharts.org
Pyecharts 的使用:(以饼图为例)
from lib.pyechartses import Bar, Pie, Line
pie = Pie(u"图1 xxx", title_text_size=15, title_top='95%', title_pos='center')
pie_attr = [] ## 属性
pie_v1 = [] ##数值
pie.add("", pie_attr, pie_v1, is_label_show=True)
pie.render(path="%s/xxx.png" % TEMP_DIR_PATH) ## 这是直接将数据渲染成图
这里render 的渲染过程是直接渲染图片(后台也会生成html),也可以选用导入pyecharts_snapshot 的make_a_snap_shot,分两步渲染,,如图
Docx 的使用:
document = Document(docx=docx_file_path) # 实例化
p = document.add_paragraph('') #添加文本
document.add_picture('%s/xxx.png' % TEMP_DIR_PATH, width=Inches(5)) # 添加标题
table = document.add_table(rows=1, cols=5) #添加表格
document.save('file_name') #保存
3. 注意事项
具体的代码情况可以自行组织
4. 案例
更多内容,请关注我。
点击链接加入群聊【odoo 学习交流】:正在跳转
qq群:484011580
若发现未经授权转载者,一律举报。毕竟原创不易,感谢您对知识的认可和理解。
注意:未经作者同意不得二次转载。