page contents

DearPyGui:Python下的高性能GUI,实时数据监控、频繁交互!

说实话,用Python写界面这事,一直挺让人头大的。Tkinter吧,丑得不想给用户看;PyQt倒是强大,但授权和体积又让人纠结;Kivy么……反正我是没搞明白。

attachments-2026-05-Q2OcmH9y69f949b18c20e.png说实话,用Python写界面这事,一直挺让人头大的。Tkinter吧,丑得不想给用户看;PyQt倒是强大,但授权和体积又让人纠结;Kivy么……反正我是没搞明白。

前阵子有个朋友跟我说,你试试DearPyGui。我一看,好家伙,这玩意儿有点东西。

它到底牛在哪?

先给你一个最直观的感受——这框架跑起来跟开了挂一样,能同时显示上百万个数据点,而且每秒60帧,你想缩放拖拽它都不带卡的。为啥?因为它后面的渲染全靠GPU,跟那些基于CPU硬画的框架根本不是一个物种。

你可能想问:这不就是个画图工具吗?不不不,它除了画图,还有节点编辑器(对,就那种做特效节点、流程图的)、自定义画布(搞点2D小游戏都行),主题皮肤也是想调成啥样就啥样。

核心就是一个字:。两个额外的字:好看

装起来费劲吗?

一点都不费劲。前提是你的Python得是3.8以上的64位版本。

打开终端,一行搞定:

pip install dearpygui

或者如果你习惯用pip3:

pip3 install dearpygui

装完就能跑,没有那些乱七八糟的依赖冲突。

写一个窗口得多少代码?

大概……十来行吧。你看这个例子:

import dearpygui.dearpygui as dpg

defsave_callback():
    print("保存按钮被点了")

dpg.create_context()
dpg.create_viewport()
dpg.setup_dearpygui()

with dpg.window(label="示例窗口"):
    dpg.add_text("Hello 世界")
    dpg.add_button(label="保存", callback=save_callback)
    dpg.add_input_text(label="输入框")
    dpg.add_slider_float(label="滑块")

dpg.show_viewport()
dpg.start_dearpygui()
dpg.destroy_context()

跑起来你就能看到一个像模像样的窗口,有文字、按钮、输入框、滑块。按钮点下去还能触发回调——这跟其它框架没啥区别,但背后运行的效率可差远了。


它到底是什么来头?

DearPyGui底层基于Dear ImGui——没错,就是游戏圈和图形工具圈里那个鼎鼎大名的即时模式GUI库。再加上ImPlot(画图)和imnodes(节点),整个技术栈非常硬核。

它支持的平台也不少:

平台图形API
Windows 10DirectX 11
macOSMetal
LinuxOpenGL 3
树莓派4OpenGL ES

不管你是写数据分析工具、参数调节面板、还是小型游戏编辑器,它都能扛得住。


想看看它到底能干啥?

这框架自带一个完整的demo,跑一下你就全明白了:

python -m dearpygui.demo

相信我,这demo里展示的控件和功能,比你想象的要多得多。而且它的Python代码是开源的,你完全可以把demo里的代码复制出来,改吧改吧就成了自己的应用。


说点掏心窝的话

我现在写一些小工具,只要是涉及到实时数据监控、频繁交互、或者需要好看一点的效果,基本都会优先考虑DearPyGui。它不像Electron那样动不动几百兆,也不像Tkinter那样怎么看怎么像上世纪的产物。

当然,它也不是没有缺点。比如文档还在完善中,有些高级用法需要去翻示例代码或者去Discord群里问。但考虑到它还在快速迭代(MIT协议,随便用),我觉得这些都不是事儿。

更多相关技术内容咨询欢迎前往并持续关注好学星城论坛了解详情。

想高效系统的学习Python编程语言,推荐大家关注一个微信公众号:Python编程学习圈。每天分享行业资讯、技术干货供大家阅读,关注即可免费领取整套Python入门到进阶的学习资料以及教程,感兴趣的小伙伴赶紧行动起来吧。

attachments-2022-05-rLS4AIF8628ee5f3b7e12.jpg

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
Pack
Pack

2003 篇文章

作家榜 »

  1. 轩辕小不懂 2403 文章
  2. 小柒 2228 文章
  3. Pack 2003 文章
  4. Nen 576 文章
  5. 王昭君 209 文章
  6. 文双 71 文章
  7. 小威 64 文章
  8. Cara 36 文章