下面的代码转储两个屏幕,一个用于Tkinter,另一个用于mayavi。如何在Tkinter中嵌入mayavi。这有可能吗?如果不是,那么构建一个将mayavi图嵌入到框架/画布中的GUI的替代方案是什么?
from tkinter import *
import numpy
from mayavi.mlab import *
top = Tk()
t = numpy.linspace(0, 4 * numpy.pi, 20)
cos = numpy.cos
sin = numpy.sin
x = sin(2 * t)
y = cos(t)
z = cos(2 * t)
s = 2 + sin(t)
points3d(x, y, z, s, colormap="copper", scale_factor=.25)
top.mainloop()发布于 2016-11-21 03:17:45
Mayavi可以嵌入到基于wxWidgets http://wxwidgets.org/或Qt https://www.qt.io/的图形用户界面程序中,而不是与Tkinter一起使用。
相关文档为http://docs.enthought.com/mayavi/mayavi/building_applications.html
如果您的需求很简单,文档中还提供了使用控制器小部件的简单示例,这些小部件可以让您更接近解决方案。
发布于 2021-10-15 09:33:16
我会尝试使用这个库将tkinter和mayavi连接在一起:https://github.com/jonwright/pyopengltk
这将在Tkinter窗口中提供OpenGL上下文,希望您能够将该上下文传递给Mayavi。
https://stackoverflow.com/questions/40690124
复制相似问题