使用Matlab中的热图绘制值:获得错误的输出

时间:2014-05-20 09:08:38

标签: image matlab heatmap

我有一个包含计算概率的512 * 512矩阵。我试图使用热图来绘制这些的0和1的突发,以便我的最终图像有点像倒置的扁平高斯函数;

问题是我的代码返回一个图像,其中所有值都只是0;这是不可能的,因为我有几乎相等的0和1的概率。我对这些值的绘图有问题吗?

X = reshape(prob_to_1,512,512); % prob_to_1 is the matrix of probabilities which 
                                % is reshaped to a 512*512 matrix
colormap('hot');
imagesc(X);
set(gca, 'XTick', [0:0.05:1]*512, 'XTickLabel',[0:0.05:1]) % 10 ticks 
set(gca, 'YTick', [0:0.1:1]*512, 'YTickLabel',[0:0.1:1]*100) % 20 
colorbar('YTickLabel',{'100%','90%','80%','70%','60%','50%','40%','30%','20%','10%','0%'})

我附上了显示输出的图像。正如您所看到的,显示nos of 1s的黑线应位于x轴的最右侧(接近1的概率)。

有任何建议/想法吗?

谢谢!enter image description here

enter image description here

1 个答案:

答案 0 :(得分:0)

那么,第二幅图像是相同数据的直方图。 hist(X,nbins)足以绘制它。