python - Matplotlib imshow 和 kivy

标签 python matplotlib kivy

我有一个 3D numpy 数组,表示 3D 断层图像 I = [i,j,k]。

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

我通常通过 matplotlib 执行所有可视化,我认为最简单的方法是将 matplotlib 连接到 kivy。我该怎么做? 我看到另一个问题提出了类似的问题,但仅限于绘图功能,并且该方法似乎不适用于 imshow。 (How to get started/use matplotlib in kivy)。

有什么建议吗?

谢谢

最佳答案

详情请参阅示例。

示例

main.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

关于python - Matplotlib imshow 和 kivy,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51860032/

相关文章:

python - 使用 Python boto3 从 S3 读取 JSON 文件

python - 使用healpy 和 projplot 进行 Aitoff 投影

python - 在 Matplotlib 中选择标记大小

python - Win 7 32 matplotlib 日期工具

android - 更新 Google Play 上的 apk 文件

python - 如何安装使 Jupyter 能够加载的包?

python - 训练 Keras 序列模型时损失没有减少

python - 如何使用 `GridSpec()` 和 `subplots()`

python - Kivy:AttributeError 具有在 kv 文件中定义的属性

python - 了解 Kivy 中的小部件