2012-11-27 3 views
1

등고선 플롯에 z 값 (0 ~ 10)을 플로팅합니다.MATLAB의 등고선 플롯에 제로 값을 플롯

데이터 1 이상을 포함하면 등고선 플롯이 생성됩니다. 다음과 같이 :

longitude = [80 82 95] 
latitude = [30 32 35] 
temp = [1 4 6; 1 2 7; 3 5 7] 

contourf(longitude,latitude,temp) 

이제 윤곽 플롯에도 제로 값을 플롯해야합니다. 대신 0 값을 나타내는 하나의 색상을 기대했지만 대신 흰색 사각형을 얻었습니다.

longitude = [80 82 95] 
latitude = [30 32 35] 
temp = [0 0 0; 0 0 0; 0 0 0] 

contourf(longitude,latitude,temp) 

고마워, 아만다

+1

당신이 찾고있는 것이 확실하지 않습니다. 두 번째 코드는 평평한 표면의 윤곽을 그려 봅니다. 이것은 자연적으로 정의되지 않습니다 (윤곽의 가장자리는 어디에 있습니까?). – Isaac

답변

1

아이작이 언급 한 바와 같이. contourf에 상수 데이터를 그리는 것은 불가능합니다. 당신은 그래서 당신이 matlab에에서이 경고를 얻을 것이다 할 때

: 당신은 0으로 몇 가지 숫자를 넣어 경우, 그러나

temp = 
    0  0  0 
    0  0  0 
    0  0  0 

    Warning: Contour not rendered for constant ZData 
    > In contourf>parseargs at 458 
    In contourf at 63 
    In TESTrandom at 45 

을의 contourf 잘 작동합니다 :

longitude = [80 82 95]; 
latitude = [30 32 35]; 
temp = [0 4 6; 1 0 7; 0 5 9]; 

contourf(longitude,latitude,temp); 
hcb = colorbar('horiz');  % colour bar 
set(get(hcb,'Xlabel'),'String','Contourf Bar.') 

contourf produced by the code above

관련 문제