我需要使用matplotlib函数ginput()在图中定义区域。但是,由于它是不规则形状,并且在每个图中都会有所不同,所以我无法定义在手之前有多少个点,即

x = randn(10,10)
imshow(x)
n = I don't know yet
points = ginput(n)

有人知道该怎么做吗?
谢谢
戴夫

最佳答案

在文档中,即help(ginput)



我们可以设置n=0 ,让ginput等待鼠标中键单击,而不是设置的点数。

奖励:设置timeout=0可以在默认30秒后阻止ginput退出。对于复杂的图,我感到很烦。

示例代码:

import pylab
x = randn(10,10)
imshow(x)
points = ginput(0, 0)
# Select the points defining your region from the
# plot then middle click to terminate ginput.

关于python - matplotlib ginput()具有未定义的点数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10919051/

10-12 22:48