2014-06-13 4 views
0

특정 좌표로 윤곽을 그리는 방법에 대해 묻고 싶습니다. 이미 컨투어 플롯의 예를 검색했고 이걸 가지고 있습니다. 여기에 코드입니다 :특정 좌표에 윤곽 플롯을 배치하는 방법은 무엇입니까?

r = 0.15; 
rx = -r:0.01:r; 
ry = r:-0.01:-r; 
[x_coor, y_coor] = meshgrid(rx, ry); 
radius = sqrt(x_coor.^2+y_coor.^2); 
contourf(x_coor,y_coor, radius,'edgecolor','none'); 
xlabel('Widht'); 
ylabel('Long'); 

는 ... 그 결과는 다음과 같습니다

enter image description here

내가 특정 좌표를 배치 윤곽 플롯의 중심을 원한다. 예 : X = 10Y = 10. 코드에 좌표를 어떻게 두어야합니까?

+0

정의되지 않은'x' 및'y' 변수로 인해 실행되지 않은 코드를 편집했습니다. 위 코드에서'x_coor'와'y_coor'로 바뀌 었습니다. 이제 코드가 그림에 표시된 플롯을 재현합니다. 아래 질문에 답변했습니다. – rayryeng

+0

도와 주심에 감사드립니다. – Kaito

답변

0

매우 간단합니다. contourf 명령 내에 오프셋을 배치하십시오. 즉 :

xMove = 10; 
yMove = 10; 
contourf(x_coor + xMove, y_coor + yMove, radius,'edgecolor','none'); 

xMoveyMove 원하는 xy 방향 중 오프셋입니다. 좌표 귀하의 예를 감안할 때, 당신은 것을 얻을 :

contour

행운을 빕니다!

+0

xlim 및 ylim을 추가하거나 해당 코드에서 축을 추가 할 때 문제가 있습니까? 예를 들어 xlim ([0 30]), ylim ([0 30]) 또는 축 ([0 30 0 30]). 등고선 플롯이 나타나지 않습니다. 어떻게해야합니까? – Kaito

+0

제한 명령을 수행 할 때보기 창을 양방향으로 0에서 30까지 확장 할 수 있습니다. 그러나 반지름이 너무 작아서 아무 것도 보이지 않습니다. 반지름을 좀 더 크게 변경하십시오 ... 15와 같습니다. 그 코드 나 그 이상에서'r'을 15로 설정하십시오. – rayryeng

+0

그것은 선생님,하지만 15를 사용하는 경우 컨투어 플롯에 빈 공간이 있습니다. 그리고 0.01 이상으로 시도해보십시오. 0.01에서 0.1으로 변경하면 결과가 http://i1275.photobucket.com이됩니다. /albums/y443/Kaito_Aokage/Capture1_zpsb22564c1.png?t=1402672247 도움 주셔서 감사합니다. :) 내 나쁜 영어에 대해 죄송합니다. – Kaito

관련 문제