问题标签 [vispy]

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 投票
0 回答
626 浏览

python - 如何使用vispy生成滚动图像?

一些背景:我正在研究 vispy 模块以实时(或尽可能接近)来自仪器的数据。我的尝试随之而来。

此代码当前有效,但比数据速率慢得多。在 vispy 画廊以及一些示例中,我看到更多的点被绘制和更新。我认为主要问题是我每次都完全设置了绘图的所有数据,而不是移动它们并插入新点。

我也看过这个例子: https ://github.com/vispy/vispy/blob/master/examples/demo/scene/oscilloscope.py

但是我不知道如何概括滚动数据的更新函数(我不了解 OpenGL),并且我不能按原样使用该示例,因为我需要一个定量色标(这似乎在 vispy.plot 中很好地实现)。

问题:有没有办法编写一个函数来滚动使用 vispy.plot 类生成的绘图数据?

谢谢。

0 投票
1 回答
417 浏览

python - Vispy 没有名为“vispy.visuals.text._sdf_cpu”的模块

我已经下载了 vispy 并安装了所有必要的依赖项(numpy pyqtcython)。

我现在正在尝试运行一些示例,例如,当我尝试运行 chloropleth.py 时,我得到以下回溯

我正在使用带有 High Sierra 的 MacbookPro 2017 并print(vispy.sys_info())返回:

您对如何解决这个问题有任何想法吗?

祝你有美好的一天

0 投票
0 回答
2060 浏览

python-3.x - 每当我在 Vispy 中创建画布时,Spyder iPython 窗口中都会出现警告

每次我在 Spyder 中创建一个 vispy Canvas 实例时:

我开始在 iPython 窗口中收到如下警告:

创建画布实例后,每当我在 Spyder 的 iPython 控制台中键入时,就会开始出现此错误,因此我无法执行诸如通过选项卡完成探索模块之类的操作(警告会消除下拉菜单)。它还倾向于将自己随机插入控制台中的堆栈跟踪和其他位置,通常会破坏我的工作流程(以非灾难性的方式)。

我尝试通过关闭实时代码分析来关闭警告,如下所示:
如何在 Spyder 编辑器中抑制某个警告?
但这并不影响行为。

我在 Spyder 版本:3.2.8(在包含 spyder-kernels 0.2.6 的环境中),Python 版本:3.6.6,Qt 版本:5.6.2,PyQt5 版本:Windows 10 中的 5.6。这发生在所有我使用的三台 Windows 10 机器。我在 Anaconda 中运行这一切。当我在 python shell 或纯 iPython shell 中运行上述代码时,我没有收到警告。

0 投票
1 回答
1787 浏览

python - 在 Vispy 中创建 matplotlib 样式的 3d 散点图 z 轴

我正在对极高密度的激光雷达点云(1M 点 +)进行博士研究,并且很难在 3D 散点图上绘制这些文件。Matplotlib 没有针对那么大的数据集进行优化,所以我尝试使用 Vispy 来实现这一点。现在,我在尝试启动和运行散点图样式的绘图时遇到了真正的麻烦,因此我可以开始构建我的管道。

我追求的是这样的: matplotlib 3D scattergraph

使用 Vispy,我发现很难应用 z 轴,而且我很难找到文档的哪一部分可以帮助我解决这个问题。这是我的代码:

它制作了一个如下所示的图表:

vispy_example_plot

You can see in the above image my problem. I want to orient the third axis perpendicular to the others, and a grid to the to the walls of the plot, so the data is more defined.

Unfortunately sub-sampling and other tricks to display the data using matplotlib, are not optimal for me because I have to display the original data, rather than showing a subset. Of course, if there are other strategies I can use to display my data as I would like, then I am all ears.

Thanks in advance, hopefully someone can help

0 投票
0 回答
237 浏览

python - PyTorch:在没有 CPU 传输的情况下渲染点云?

我在 GPU 上的 pytorch 中有一些数据,比如说,

有没有办法在不先将数据传输到 CPU 的情况下将其渲染为点云(ala https://matplotlib.org/gallery/mplot3d/scatter3d.html )?

我看过 matplotlib、VisPy、mayavi 等框架。但它们似乎都希望通过 CPU 获取数据,并且无法处理 GPU 指针。

有谁知道好的方法吗?最好,绘图应该是非阻塞的,这样我可以x在训练期间实时查看。有任何想法吗?

0 投票
1 回答
1002 浏览

python - 无法导入后端“Glfw”

代码:from p5 import *
错误

回溯(最后一次调用):文件“C:\Users\Anvit\Desktop\Pygame\py.py”,第 1 行,从 p5 导入 *
文件“C:\Users\Anvit\AppData\Local\Programs\Python \Python37\lib\site-packages\p5__init__.py",第 19 行,从 .sketch 导入 *
文件 "C:\Users\Anvit\AppData\Local\Programs\Python\Python37\lib\site-packages\p5\ sketch__init__.py”,第 19 行,在 vispy.use('glfw')
文件“C:\Users\Anvit\AppData\Local\Programs\Python\Python37\lib\site-packages\vispy\util\wrappers.py”中,第 96 行,正在使用 use_app(app)
文件“C:\Users\Anvit\AppData\Local\Programs\Python\Python37\lib\site-packages\vispy\app_default_app.py”,第 47 行,在 use_app default_app = Application (后端名称)
文件“C:\Users\Anvit\AppData\Local\Programs\Python\Python37\lib\site-packages\vispy\app\application.py”,第 49 行,在 __init__ self._use(backend_name)
文件“C:\ Users\Anvit\AppData\Local\Programs\Python\Python37\lib\site-packages\vispy\app\application.py",第 223 行,在 _use 中引发 RuntimeError(msg)
RuntimeError:无法导入后端“Glfw”:
[ WinError 193] %1 不是有效的 Win32 应用程序

我一直试图让 P5 工作,但无论我尝试什么,都会出现这个错误。我做了什么

  1. 从官方网站尝试了 64 位和 32 位版本的 GLFW。我的机器是 64 位 windows 10 和 python 3.7.1 64 位版本
  2. 尝试将python glfw安装中的glfw.dll与官网获取的glfw.dll文件互换。
  3. 另一个答案建议修改 glfw.py 文件,使其通过绝对路径而不是系统变量路径导入 glfw.dll (不确定如何执行此操作)。我已经将该文件夹添加lib-mingw-w64到环境变量路径
0 投票
0 回答
527 浏览

python - 在 VisPy 中使用 on_timer 更新 SceneCanvas

我正在尝试编写一个 vispy 程序,该程序将显示图像并在顶部叠加两个圆圈;最终,这两者的信息都将来自实时数据流。

首先,我正在尝试编写一些只会定期显示圆圈的东西。我修改了Vispy 库中的实时信号示例,效果还不错因为似乎我想使用场景图来将其与图像结合起来,所以我将 Canvas 更改为 sceneCanvas。部分新课程在这里;我试图只包括我认为可能相关的内容。

我看到的是画布只会非常不规则地更新,并且在一点点后似乎会冻结(但如果我移动框架,图像可能会更新)。当我使用 app.Canvas 而不是 SceneCanvas 时,这一切正常。有谁看到我可能做错了什么?是景色吗?我注意到很多程序都使用了诸如 central_widget.add_view() 之类的东西,但是当我尝试为 self.program 设置“u_view”时不起作用。

有任何想法吗?

0 投票
0 回答
537 浏览

signals - 想要使用 Vispy 场景画布显示两个实时信号

我正在尝试使用 Vispy 实时获取和显示信号。我通过 pyserial 通过串行端口获取信号。

我已经修改了 realtime_signals 示例(https://github.com/vispy/vispy/blob/master/examples/demo/gloo/realtime_signals.py)并且能够单独显示每个信号。我还可以显示相同信号的 3 或 5 个图。但我无法在同一画布或插入 PyQt5 应用程序的两个不同画布中显示两个信号(每个来自不同的串行端口)。我对 OpenGL 和着色器没有经验。

串口代码和修改后的场景定时器代码如下。

任何帮助,将不胜感激。

0 投票
2 回答
840 浏览

python - 将 vispy 与 pyqt5 和 uic 集成

在添加小部件时,有关 vispy 的一些问题提到了使用 canvas.native。在 qt 设计器中作为占位符制作的小部件如何用于 vispy?

这个想法是从这个

到一个版本,其中有一个 ui 或生成的 python 文件,该文件有一个名为“frameFor3d”的框架。

这个错误与 None 因为 layout() 是 none。

uic 样本

0 投票
1 回答
88 浏览

python - 在第二个屏幕上显示 Vispy

根据网页上的示例,我正在使用 Vispy 显示一些实时信号。特别是我使用 app.Canvas 来创建和更新显示。

有没有办法在创建画布时指定几何信息?理想情况下,我想为新窗口指定大小、坐标和监视器。但是指定监视器是最重要的部分。