问题标签 [matplotlib-widget]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
251 浏览

python - 在 matplotlib 中设置 CheckBox 的逻辑状态而不触发回调?

有没有办法在 matplotlib 中设置 CheckButtons 的逻辑状态并触发onclick()回调?

这是我的场景:

我正在显示一个包含大量跟踪(50+)的图表,并希望让用户可以选择根据一些固定查询显示其中的一个子集,用户通过CheckButton. 每次单击按钮时,脚本都会CheckButton通过 获取所有 present 的状态get_status(),计算符合所选标准的迹线的索引,并相应地更新显示。

为了让用户的生活更轻松,我还希望有一个“全选”和“全部清除”按钮。我能想出的实现这些的最佳方法是在不触发on_click()回调的情况下强制所有 CheckButtons 的逻辑状态为 True 或 False,然后相应地设置跟踪的可见性。

但是,CheckButton()没有set_status()方法 https://matplotlib.org/api/widgets_api.html#matplotlib.widgets.CheckButtons

有一种方法,但根据文档,如果为真 set_active(),它会触发回调。eventson

有人可以给我一些指示如何去做吗?我是否需要eventson=False为 wdget 设置,然后再set_active()=True设置eventson=True?看起来相当笨重,但我想不出更优雅的方式,即使花了太多时间。

谢谢!

0 投票
1 回答
22 浏览

python-3.x - 选择包装到函数中的事件类无法工作

请看以下代码:

上面的代码有效!基本上,它将使未选择的点透明。但是,如果我将代码包装成这样的函数:

有人请对此有所了解吗?谢谢!

0 投票
0 回答
330 浏览

python - 随着更多数据的进入,python matplotlib 实时图 x 轴被挤压

''' - 大家好,我有一个小问题非常感谢任何帮助,我有一个可以捕获温度和湿度的硬件,我正在使用 python 来显示实时图表

问题:10 秒后 x 轴被时间淹没请看照片以获得问题的清晰图片

我如何摆脱这个问题 x 轴没有被清除,因为新数据和新数据及时出现在 x 轴上。

另外,我有一个向数据库添加数据的功能,我想每 10 秒后添加一次数据。睡眠不起作用

'''

问题可以在图中看到,随着更多数据的进入,x 轴如何被挤压

0 投票
1 回答
152 浏览

python - 如何在 Python 中将 x 轴范围从 1 到 20,每个差异有 5 个?

这是我的代码的结果,可以进行哪些更改? 这是我的代码结果,可以进行哪些更改?

我想要这个结果: 我想要这个结果。

请帮忙。

0 投票
0 回答
711 浏览

python-3.x - 使用 tkinter/matplotlib 创建新的工具栏图标和功能

我想将标尺添加到使用 tkinter 和 matplotlib 创建的 gui。已经有一个自定义工具栏,但它目前只使用已经提供的工具:

如果“未选择”平移或缩放,则使用充当套索的绘图工具。套索用于选择您要标记的区域,然后在右侧图像上显示为标记。这是 GUI 的图像,其中“双边界”作为当前选择的标签(未选择时为深粉红色)。

GUI 工具的图像

所以,有人在 github 上创建了一个标尺工具:https ://github.com/terranjp/matplotlib-tools

我发现了几篇密切相关的文章:创建图标:添加工具栏按钮图标 matplotlib 自定义工具栏的不同方法:http ://dalelane.co.uk/blog/?p=778

我不确定如何在 GUI 环境中实现按钮/工具。这里的任何方向将不胜感激。

0 投票
1 回答
544 浏览

python - 创建一个图形,其中包含按 gridspec 布局排列的绘图、滑块和其他小部件

我想创建一个可以使用滑块和其他小部件控制参数的动画图。我必须创建几个类似的图形,所以我想将它打包到某个类中,以便与各种参数一起重复使用。但在那之前,我想弄清楚它是如何工作的。

此代码将在图形的上部创建一个图形,并将其余部分留空。但是,x 轴和 y 轴是在 [-0.05,0.05] 范围内绘制的,而不是在下面的预定义范围内。

如何确保按我想要的比例绘制图表?

我不知道的另一件事是如何将小部件添加到布局中?我想将它们插入到 gridspec 中而不对坐标和大小进行硬编码,以使它们适应给定的空间。

我在下面尝试了一些方法,但这显然没有用。我该如何做才能让它按我的意愿工作?

0 投票
1 回答
48 浏览

python - 在类中放置具有可控参数的动画图

上面截图的想法是有一个动画图表和一组控制它的参数的小部件。更改参数应该会更改正在显示的图形。

话虽如此,上面的代码都没有这样做。它是一个不改变的动画图和两个改变对象内变量的小部件。但是,该程序无法按预期工作。

首先,图表根本不显示。我不明白为什么。其次,更改任何两个小部件的状态都会引发TypeError

我在这里做错了什么?

0 投票
1 回答
194 浏览

python - Python/Django 或 D3 中的自定义离散滑块

我正在为一家小公司的 Intranet 开发自定义调查应用程序,并想设计自定义滑块。我需要有离散的滑块,可以指示 1-5 的值,但允许您根据悬停和单击操作选择您的级别。我通过 matplotlib 和 D3 找到了 Python 的离散滑块,但没有这样的。我希望它看起来像这样:

滑块示例

这种前端实现是在 d3 中更好地工作,还是更好的做法是为 Python 中现有的滑块类编写一个包装器?接受任何和所有建议,但我坚持使用 Django 作为应用程序的框架。

0 投票
1 回答
4191 浏览

python - Pyinstaller onefile 可执行文件非常庞大和缓慢

我知道我不是第一个问的,但是论坛上的其他答案对我没有帮助,所以我问了。我有一个只有导入的短(181 行)python 脚本

import numpy as np import matplotlib.pyplot as plt from matplotlib.widgets import Slider, RadioButtons

并运行带有滑块和单选按钮的交互式数学工具。但是当我使用 pyinstaller 构建它时,我最终得到了一个巨大的 (90 MB) dist 文件夹,其中似乎包含各种不必要的包,如 babel 和密码学。里面的可执行文件大约需要 5 秒左右才能实际显示该图形。当我使用 --onefile 选项运行它时,情况似乎并没有好转,因为我得到了一个 43 MB 的可执行文件,它需要更长的时间,大约 10 秒才能显示该图形。

我很确定这不是脚本的错,因为在 Spyder 中,打开它需要不到一秒钟的时间。我怀疑这是因为所有无关的软件包。如果是这样,我如何让 pyinstaller 排除它们,如果没有,那么可能的问题是什么?谢谢。

编辑:另外,我在 conda 虚拟环境中执行所有这些操作,我在某处读到的内容应该已经有助于使 pyinstaller 的可执行文件更小。创建环境后,我直接安装的包只有pyinstaller、spyder、numpy和matplotlib。

0 投票
2 回答
1784 浏览

python - 在 matplotlib 中水平显示单选按钮

我正在使用matplotlib.widgets在我的小部件中创建单选按钮,即将到来的按钮垂直堆叠,我希望它们水平堆叠。

MVCE:

正如你在这个例子中看到的,你可以得到这样的单选按钮 使用垂直堆叠的单选按钮绘图

我想知道有没有办法水平堆叠这些单选按钮。