我正在使用matplotlib.imshow2D阵列的交互式显示.光标下的x/y坐标显示在窗口的左下角.是否也可以在光标下获取数组的值?
简短版本:是否有用于显示图像的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]例如.
但是,这些方法都没有显示像素值.所以我有两个问题:
imshowfrom matplotlib(和imshowfrom scikit-image)显示正确的(整数)像素索引吗?我有包含 72 个特征的数据集。现在我想找到会影响我的模型的最重要的特征。因此,我尝试使用seaborn和绘制相关矩阵图,matplotlib但是当我尝试绘制它时,因为它包含 72 个特征,因此无法正确地将其可视化。我怎样才能放大情节以更好地理解它。
代码:
%matplotlib inline
corr = data.corr()
sns.heatmap(corr,
xticklabels=corr.columns.values,
yticklabels=corr.columns.values)
Run Code Online (Sandbox Code Playgroud)
截屏: