Matlab绘图技巧-NAN元素绘图出现锯齿状解决办法

Matlab绘图技巧-NAN元素绘图出现锯齿状解决办法

   想必有很多同学遇到绘制3维曲面热力图,有一些数据是nan,绘制出来的图会出现锯齿状:如下图:
Matlab绘图技巧-NAN元素绘图出现锯齿状解决办法_第1张图片
   如果用matlab直接绘制带nan的矩阵的话,则会像上图一样,当然,可以用fill3函数去一块块填补起来,但是填补的颜色很难确定,这里给出一个简单的解决办法:将矩阵对称补全,绘制,然后只展示半个曲面:
Matlab绘图技巧-NAN元素绘图出现锯齿状解决办法_第2张图片

clc;clear all;close all
len = 30;
DataHalf = nan*ones(len);
for i = 1:len
    for j = 1:i
        DataHalf(i,j) = i-j;
    end
end
figure(1)
surf(DataHalf)
view([17.339673913043473,50.399999999999999])

DataHalf_full = DataHalf;

for i = 1:len
    for j = i+1:len
        DataHalf_full(i,j) = -DataHalf(j,i);
    end
end
figure(2)
surf(DataHalf_full)

view([17.339673913043473,50.399999999999999])
zlim([0 max(max(DataHalf_full))])

你可能感兴趣的:(▶,Matlab,matlab,开发语言)