MATLAB:带有二进制信息(1和0)的矩阵和图像命令不显示任何内容

MATLAB:带有二进制信息(1和0)的矩阵和图像命令不显示任何内容,matlab,Matlab,在处理一个输入之后,我最终得到了一个表示体积的nxmxl矩阵。该矩阵上的值仅为0或1。当我尝试使用如下图像显示此卷中的“切片”时: image(volume(:,:,80)) 显示的图形全部为蓝色。现在如果我使用imagesc,图像显示正常(蓝色和红色)。我认为这与colormap有关,但无法真正理解如何使用image命令显示图像。 我的最终目标是在一个3d绘图中显示3或4个切片,这与此处显示的内容类似:您是对的,您的问题与colormap有关。试一试 image(volume(:,:,80)

在处理一个输入之后,我最终得到了一个表示体积的nxmxl矩阵。该矩阵上的值仅为0或1。当我尝试使用如下图像显示此卷中的“切片”时:

image(volume(:,:,80))
显示的图形全部为蓝色。现在如果我使用imagesc,图像显示正常(蓝色和红色)。我认为这与colormap有关,但无法真正理解如何使用image命令显示图像。
我的最终目标是在一个3d绘图中显示3或4个切片,这与此处显示的内容类似:

您是对的,您的问题与colormap有关。试一试

image(volume(:,:,80))
colorbar
您将看到当前的颜色映射范围从0到64。如果改用此命令:

image(volume(:,:,80),'CDataMapping','scaled')
colorbar
你应该得到你想要的图像,你的彩色地图现在被缩放到你的数据范围(当然,你不需要显示
colorbar
来获得正确的缩放,我只是添加它来让事情更清楚)