news 2026/4/16 16:04:09

为什么 pyecharts 在 Jupyter Notebook 里显示空白?

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
为什么 pyecharts 在 Jupyter Notebook 里显示空白?

📊 为什么 pyecharts 在 Jupyter Notebook 里显示空白?90% 的人都踩过这个坑!

“HTML 能打开,Jupyter 却一片空白?”
别急,不是你的代码错了,而是你漏了关键两行!


最近有不少朋友私信我:

“我用pyecharts画了个柱状图,保存成 HTML 能正常打开,但在 Jupyter Notebook 里却什么也看不到,一片空白!”

这个问题其实非常常见——尤其是在PyCharm、VS Code 或企业内网环境中使用pyecharts时。

今天就手把手教你彻底解决 Jupyter 中 pyecharts 图表不显示的问题,附完整可运行代码 ✅


❌ 问题复现:看似没问题,实则“隐形错误”

很多人的初始代码长这样:

frompyecharts.chartsimportBarfrompyechartsimportoptionsasopts bar=(Bar().add_xaxis(["衬衫","毛衣","领带"]).add_yaxis("销量",["114","55","27"])# ⚠️ 字符串!.set_global_opts(title_opts=opts.TitleOpts(title="销售统计")))bar.render_notebook()

结果:Jupyter 里一片空白,但bar.render("test.html")打开却完全正常!


🔍 根本原因有三个

  1. Y 轴用了字符串"114"而非数字114→ 部分版本无法解析
  2. 未指定运行环境类型pyecharts不知道你在用 JupyterLab 还是普通网页
  3. JavaScript 资源未加载→ 尤其在无外网或 PyCharm 环境中,CDN 被阻断

✅ 终极解决方案(亲测有效)

只需加两行配置 + 调一个方法,图表立刻显示!

# === 关键初始化:告诉 pyecharts 你在用 JupyterLab ===frompyecharts.globalsimportCurrentConfig,NotebookType CurrentConfig.NOTEBOOK_TYPE=NotebookType.JUPYTER_LABfrompyecharts.chartsimportBar# 数据必须是数字!x=['衬衫','毛衣','领带','裤子']y1=[114,55,27,101]y2=[80,60,40,90]bar=Bar()bar.add_xaxis(x)bar.add_yaxis("商家A",y1)bar.add_yaxis("商家B",y2)# === 关键一步:强制加载 JS 资源 ===bar.load_javascript()# 渲染到 Notebookbar.render_notebook()

✅ 运行后,图表立刻出现在单元格下方!在这里插入图片描述


💡 原理解释

  • CurrentConfig.NOTEBOOK_TYPE = NotebookType.JUPYTER_LAB
    → 让pyecharts按 JupyterLab 的方式注入 HTML/JS,避免渲染错位。

  • bar.load_javascript()
    → 显式加载 ECharts 的 JavaScript 库。即使没有网络,也会从本地缓存加载(首次运行会自动下载)。

📌 小贴士:如果你用的是标准 Jupyter Notebook(非 Lab),可改为:

CurrentConfig.NOTEBOOK_TYPE=NotebookType.JUPYTER_NOTEBOOK

🛠️ 额外建议

  • 始终用数字列表,不要用字符串表示数值
  • 如果公司网络限制外网,建议加上:
    frompyecharts.globalsimportCurrentConfig CurrentConfig.ONLINE_HOST=""# 强制使用本地资源
  • 可将初始化代码封装成模板,每次新建 notebook 直接复制

🎁 结语

pyecharts是一个强大又美观的可视化库,但在 Jupyter 中“显示空白”确实劝退了不少初学者。

其实,不是工具不行,只是缺了那两行“魔法代码”

希望这篇推文能帮你少走弯路,快速画出漂亮的交互式图表!


版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 7:42:08

基于PLC的全自动洗衣机的掌控系统编辑(设计源文件+万字报告+讲解)(支持资料、图片参考_相关定制)_文章底部可以扫码

基于PLC的全自动洗衣机的掌控系统编辑(设计源文件万字报告讲解)(支持资料、图片参考_相关定制)_文章底部可以扫码基于PLC的全自动洗衣机的掌控系统编辑(设计源文件万字报告讲解)(支持资料、图片参考_相关定制)_文章底部可以扫码 摘…

作者头像 李华
网站建设 2026/4/16 13:33:11

Nodejs毕设项目推荐-基于nodejs回忆小书屋管理微信小程序基于nodejs的回忆小书屋小程序【附源码+文档,调试定制服务】

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华
网站建设 2026/4/16 13:43:45

MySQL之SQL语句执行过程详解

MySQL之SQL语句执行过程详解 概述 MySQL执行一条SQL语句需要经过多个处理阶段,从客户端发送请求到最终返回结果,整个过程涉及多个组件的协同工作。本文将详细介绍MySQL中SQL语句的执行流程。 整体架构 MySQL的架构可以分为三层: 连接层&…

作者头像 李华