相关疑难解决方法(0)

如何以交互方式更新matplotlib的imshow()窗口?

我正在研究一些计算机视觉算法,我想展示一个numpy数组在每一步中如何变化.

现在有用的是,如果imshow( array )我的代码末尾有一个简单的,窗口会显示并显示最终的图像.

然而,我想要做的是更新并显示imshow窗口,因为图像在每次迭代中都会发生变化.

例如,我想做:

import numpy as np
import matplotlib.pyplot as plt
import time

array = np.zeros( (100, 100), np.uint8 )

for i in xrange( 0, 100 ):
    for j in xrange( 0, 50 ):
        array[j, i] = 1

        #_show_updated_window_briefly_
        plt.imshow( array )
        time.sleep(0.1)
Run Code Online (Sandbox Code Playgroud)

问题是这样,只有整个计算完成后,Matplotlib窗口才会被激活.

我已经尝试了原生matplotlib和pyplot,但结果是一样的.为了绘制命令我找到了一个.ion()开关,但在这里它似乎不起作用.

Q1.连续显示numpy数组更新的最佳方法是什么(实际上是uint8灰度图像)?

Q2.是否可以使用动画功能执行此操作,如动态图像示例中所示?我想在循环中调用一个函数,因此我不知道如何使用动画函数来实现它.

python numpy matplotlib spyder

36
推荐指数
3
解决办法
5万
查看次数

我可以使matplotlib滑块更加离散吗?

我正在使用matplotlib滑块,类似于这个演示.滑块目前使用2个小数位并且"感觉"非常连续(尽管它们必须在某个级别上是离散的).我可以决定他们离散的级别吗?整数步骤?0.1尺寸的台阶?0.5?我的google-fu让我失望了.

python slider matplotlib

11
推荐指数
1
解决办法
1万
查看次数

matplotlib.imshow()实际上返回什么对象?如何使用这个物件?

我当时正在尝试运行以下代码:

imgplot = plt.imshow(dose_data, extent = [0,4,0,6], aspect = 'auto')
Run Code Online (Sandbox Code Playgroud)

在控制台上,我输入了以下输入:

In[38]:imgplot
Out[38]: <matplotlib.image.AxesImage at 0x123ebd198>
Run Code Online (Sandbox Code Playgroud)

输出使我想知道对象是什么。在查阅了文档之后,它看起来像一个AxesImage对象(AxesImage文档)。但是我想知道如何使用存储在imgplot中的对象。目前,我既看不到它是什么,也无法保存到图像中。

PS我知道如何显示图像以及如何保存图像。我只是想知道这个对象如何有用以及它实际上是什么(例如,它是图像对象还是数组?还是其他一些奇怪的对象类型?)

python plot matplotlib imshow

6
推荐指数
2
解决办法
3063
查看次数

在matplotlib动画模块中管理动态绘图

我希望有一个迭代绘制的图形,允许跳到下一帧,停止它并返回到前一帧.

我已经看过matplotlib动画模块,如果有一种方法可以实现以前的帧功能(比如在按下某个键的情况下向后运行动画几帧),这将是完美的

这样的事情会很好:

def update_frame(i, data):
    fig.set_data(data[i])
Run Code Online (Sandbox Code Playgroud)

但在某种程度上,我可以明确地管理迭代器是增加还是减少.

有没有办法在matplotlib中做到这一点?我应该寻找一个不同的python模块吗?

python animation matplotlib

4
推荐指数
1
解决办法
2525
查看次数

如何创建交互式图表

我想使用 python 创建一个图表,在其中我可以看到与不同数据点相关的数据。例如,我想比较 10 种不同产品的 5 种不同品质(数据点)。

现在是否可以从下拉列表中一次选择一个数据点并显示所有 10 种产品的数据?

到目前为止,我只使用创建了简单的比较图表matplotlib。是否matplotlib有能力做到这一点?任何链接或相关文档都会有所帮助。谢谢。

python matplotlib ipython jupyter

0
推荐指数
1
解决办法
3879
查看次数

标签 统计

matplotlib ×5

python ×5

animation ×1

imshow ×1

ipython ×1

jupyter ×1

numpy ×1

plot ×1

slider ×1

spyder ×1