Matplotlib imshow和kivy

2024-04-27 14:55:58 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个三维数字阵列,代表一个三维断层图像I=[I,j,k]。在

我开始学习kivy,因为我需要做一个简单的GUI,其中包括一个2D图像查看器,用于3D(s=[I,:,:])图像的每个切片,以及一个可以在平面上移动的切片器。在

我通常通过matplotlib来实现所有的可视化,我坚持认为最简单的方法是将matplotlib连接到kivy上。我该怎么做? 我看到另一个问题也提出了类似的问题,但只涉及到绘图功能,而且该方法似乎不适用于imshow。(How to get started/use matplotlib in kivy)。在

有什么建议吗?在

谢谢


Tags: 方法图像功能绘图matplotlib可视化切片gui
1条回答
网友
1楼 · 发布于 2024-04-27 14:55:58

详情请参考示例。在

示例

在主.py在

from kivy.garden.matplotlib.backend_kivyagg import FigureCanvasKivyAgg
from kivy.app import App
from kivy.uix.boxlayout import BoxLayout
import matplotlib.pyplot as plt
import matplotlib.image as mpimg


img = mpimg.imread('ac013.JPG')
lum_img = img[:, :, 0]
plt.imshow(lum_img, cmap="nipy_spectral")
plt.colorbar()


class TestApp(App):
    title = "Kivy Garden Matplolib & imshow()"

    def build(self):
        box = BoxLayout()
        box.add_widget(FigureCanvasKivyAgg(plt.gcf()))
        return box


if __name__ == "__main__":
    TestApp().run()

输出

Img01

相关问题 更多 >