wxpython解决pyechart打包exe不兼容问题

简介: wxpython和pyecharts可以搭配使用,在桌面程序中展示web形式的图表。但是在使用pyinstaller打包成exe文件后,可能会出现一些BUG

简单介绍:wxpython和pyecharts可以搭配使用,在桌面程序中展示web形式的图表。但是在使用pyinstaller打包成exe文件后,可能会出现如下BUG:

BUG1:在用pyinstaller将wxpython程序打包成exe文件后,运行会发生TemplateNotFound: simple_chart.html的报错信息。

这时候,需要把pyechats 的在python环境里的html文件拷贝出来,目录用/pyecharts/templates/ 然后放置在pyinstall打包后的主程序文件夹目录下

image.png

BUG2.生成了HTML文件之后,没有加载JS

1.去echarts官网下载echarts.common.min.js放在resource目录下

2.修改Lib\site-packages\pyecharts\templates\的simple_page.html和simple_chart.html 的{{ echarts_js_dependencies(chart) }} 变成<script type="text/javascript" src="../echarts.common.min.js"></script>,然后重新打包

(补充解释:把echarts.common.min.js 放在pyecharts生成的HTML文件的上级目录里,对应src="../echarts.common.min.js")

4.修改wxpython的代码,在frame里增加一个webview

self.frame = reportFrame.MyFrame(None, wx.ID_ANY, "")
self.wv = webview.WebView.New(self.frame.panel_1, size=(500, 600)) # 加了这行就能整体拖动了
name = os.path.abspath(os.getcwd() + './resource/reports/init_report.html')
self.wv.LoadURL("file:///"+name)

5.把pyecharts/template目录和resource目录一起拷贝到manage目录下(manage是因为我打包的时候用的命令是pyinstaller -D manage.py)

因为有读者不是很明白文件结构,下面附上我的resource目录和pyechart生成的结构html文件目录

resource目录

image.png

image.png

生成的html文件里的内容

image.png

目录
相关文章
|
6月前
|
C语言 Windows
Qt 应用程序打包成安装文件
Qt 应用程序打包成安装文件
104 0
|
Go 开发工具 C语言
flutter项目打包.exe文件发布windows版
目录 发布windows版 1.为现有的 Flutter 应用程序添加桌面支持 2..创建main_desktop.dart文件 3.hover安装和环境配置 4.初始化,并打包 坑1
1447 0
flutter项目打包.exe文件发布windows版
|
5月前
|
Dart 开发工具 Windows
Dart安装(Winodws)
Dart安装(Winodws)
146 0
|
C++ Windows
winform 程序打包成windows安装包
winform 程序打包成windows安装包前提:VS2019,winform 程序已经有一个完整可运行的 winform 程序。VS中上方扩展选项卡,选择 管理扩展,在打开的弹窗中选择联机,在右侧搜索框搜索 installer, 在中间显示的结果选择 Microsoft Visual Studio Installer Projects 点击下载。下载完成之后,关闭vs,自动打开扩展的安...
85 0
winform 程序打包成windows安装包
|
6月前
|
C语言
Qt5项目开发中,打包生成单个EXE程序
Qt5项目开发中,打包生成单个EXE程序
891 0
|
Linux UED iOS开发
[√]pyinstaller打包的exe运行报错,找不到库
[√]pyinstaller打包的exe运行报错,找不到库
400 0
|
数据可视化 区块链
如何使用nsis打包electron开发的安装程序
如何使用nsis打包electron开发的安装程序
如何使用nsis打包electron开发的安装程序
|
Shell Python
python + uiautomator2编译平板语言工具并切换打包exe可执行文件(上)
python + uiautomator2编译平板语言工具并切换打包exe可执行文件(上)
394 0
python + uiautomator2编译平板语言工具并切换打包exe可执行文件(上)
|
Python
python + uiautomator2编译平板语言工具并切换打包exe可执行文件(下)
python + uiautomator2编译平板语言工具并切换打包exe可执行文件(下)
312 0
python + uiautomator2编译平板语言工具并切换打包exe可执行文件(下)
|
Python
python + uiautomator2编译平板语言工具并切换打包exe可执行文件(中)
python + uiautomator2编译平板语言工具并切换打包exe可执行文件(中)
413 0
python + uiautomator2编译平板语言工具并切换打包exe可执行文件(中)