9月13日matlab中pcolor绘图“少画一行”的问题
本文是关于matlab
pcolor函数(slice,surf函数的情况与这个类似)绘图的问题的一些解决方案,在此记录备用
经常处理三维(或者四维)数据体的同学们大概大多数都用过matlab里面的pcolor(slice)之类的函数,可能有人注意到过本文中的这类情况,即
本来要是画一个N×N的数据体,结果却画出来一个(N-1)*(N-1)的东西,我是一直都没有注意到这个情况,直到近日有人问我这个问题……示例代码如下:
%一个简单的matlab 脚本,用pcolor画色块图,本意是得到一个20*20的色块图:
x=0:19;
y=0:19;%注意这里有20个点
[xx,yy]=meshgrid(x,y);
data=sqrt(xx.^2+yy.^2);
figure;
hold on;
h=pcolor(xx,yy,data);
plot(x,y,'r+');
colorbar;
axis tight;
hold off;
注意实际上只得到了19*19的色块(无聊的人可以数一下……),这又是为什么呢?输入的xx,yy和数据明明都是20*20的……
咳……实际上pcolor的默认的