相关疑难解决方法(0)

光标下的matplotlib值

我正在使用matplotlib.imshow2D阵列的交互式显示.光标下的x/y坐标显示在窗口的左下角.是否也可以在光标下获取数组的值?

matplotlib

26
推荐指数
2
解决办法
2万
查看次数

Python中图像的交互式像素信息?

简短版本:是否有用于显示图像的Python方法,该图像实时显示像素指数和强度?因此,当我将光标移到图像上时,我会不断更新显示,例如pixel[103,214] = 198(灰度)或pixel[103,214] = (138,24,211)rgb?

长版:

假设我打开一个保存为ndarray的灰度图像im并使用imshowmatplotlib 显示它:

im = plt.imread('image.png')
plt.imshow(im,cm.gray)
Run Code Online (Sandbox Code Playgroud)

我得到的是图像,在窗口框架的右下角,是像素索引的交互式显示.除了它们不完全,因为值不是整数:x=134.64 y=129.169例如.

如果我以正确的分辨率设置显示器:

plt.axis('equal')
Run Code Online (Sandbox Code Playgroud)

x和y值仍然不是整数.

imshow从方法spectral包做一个更好的工作:

import spectral as spc
spc.imshow(im)
Run Code Online (Sandbox Code Playgroud)

然后在右下角我现在有了pixel=[103,152]例如.

但是,这些方法都没有显示像素值.所以我有两个问题:

  1. 可以强制imshowfrom matplotlib(和imshowfrom scikit-image)显示正确的(整数)像素索引吗?
  2. 可以扩展这些方法中的任何一个以显示像素值吗?

python image image-processing matplotlib scikit-image

24
推荐指数
2
解决办法
2万
查看次数

从 Matplotlib 图形的工具栏中禁用坐标

我在一个使用 PyQt4 和 Matplotlib 库的项目中工作。我创建了一个 matplotlib 图并添加了一个工具栏。

有没有办法禁用其中显示的坐标?我的意思是这些:

在此处输入图片说明

我想这样做,因为我要在工具栏中添加一些按钮,我需要这个空间。

这是 matplotlib 图的代码:

class Figure(QMainWindow):
  def __init__(self):
    QMainWindow.__init__(self)

    self.linedit = SelectData(self)

    self.mainWidget = QWidget()
    self.setCentralWidget(self.mainWidget)

    layout = QVBoxLayout()
    self.mainWidget.setLayout(layout)

    self.figure_canvas = FigureCanvas(Figure())
    layout.addWidget(self.figure_canvas, 10)

    self.axes = self.figure_canvas.figure.add_subplot(211)
    self.axes.grid(False)

    #I added this toolbar
    self.navigation_toolbar = NavigationToolbar2(self.figure_canvas, self)
    self.addToolBar(Qt.TopToolBarArea, self.navigation_toolbar)
Run Code Online (Sandbox Code Playgroud)

我是python的新手,所以我希望你能帮助我。谢谢您的回答。

python pyqt matplotlib

3
推荐指数
1
解决办法
1769
查看次数