MATLAB의 3D 선 또는 점 도표
이 튜토리얼에서는 MATLAB의 plot3()
함수를 사용하여 점 또는 선의 3D 플롯을 만드는 방법에 대해 설명합니다.
MATLAB의 plot3()
함수를 사용하여 점 또는 선의 3D 플롯 생성
우리는 이미 2D 평면에 데이터를 그리는 데 사용되는 MATLAB의 plot()
함수에 대해 알고 있습니다.
plot3()
함수는 plot()
함수와 유사합니다. 유일한 차이점은 plot3()
함수가 3D 평면에 데이터를 플로팅한다는 것입니다.
데이터를 연속 플롯이라고 하는 선과 이산 플롯이라고도 하는 점으로 플롯할 수 있습니다. 3D 평면에 데이터를 표시하려면 세 개의 좌표 x, y 및 z를 전달해야 합니다.
예를 들어 plot3()
함수를 사용하여 3D로 나선을 플로팅해 보겠습니다. 아래 코드를 참조하십시오.
clc
t = 0:pi/50:10*pi;
sinet = sin(t);
cost = cos(t);
plot3(sinet,cost,t)
출력:
plot3()
함수 내에서 여러 입력을 사용하여 여러 라인을 동시에 플롯할 수도 있습니다.
예를 들어, 6개의 입력과 plot3()
함수를 사용하여 두 개의 라인을 플로팅해 보겠습니다. 아래 코드를 참조하십시오.
clc
time = 0:pi/500:pi;
xs1 = sin(time).*cos(10*time);
ys1 = sin(time).*sin(10*time);
zs1 = cos(time);
xs2 = sin(time).*cos(12*time);
ys2 = sin(time).*sin(12*time);
zs2 = cos(time);
plot3(xs1,ys1,zs1,xs2,ys2,zs2)
출력:
여러 줄의 경우 plot3()
함수는 각 줄에 다른 색상을 부여합니다. legend()
함수를 사용하여 각 줄에 고유한 이름을 지정할 수도 있습니다. MATLAB의 범례에 대한 자세한 내용은 이 링크를 확인하십시오.
6개의 인수를 전달하는 대신 여러 데이터의 좌표를 단일 행렬에 저장할 수 있습니다.
예를 들어 위의 경우 단일 행렬에 있는 각 데이터의 x 좌표를 열로 저장할 수 있으며 나머지 좌표도 마찬가지입니다. 그런 다음 3개의 입력만 전달하면 됩니다.
x축 레이블에 대해 xlabel()
함수, y축 레이블에 대해 ylabel()
, z축 레이블에 대해 label()
을 사용하여 3D 플롯의 각 축에 레이블을 추가할 수도 있습니다. . title()
함수를 사용하여 플롯에 제목을 지정할 수도 있습니다.
원의 경우 o, 더하기 기호의 경우 +, 별표의 경우 *, 다이아몬드의 경우 d와 같은 다른 마커를 사용하여 이산 플롯의 경우 선을 점으로 변경할 수도 있습니다.
예를 들어, 위의 그래프를 이산 형태로 플롯하고 플롯에 레이블과 제목을 추가해 보겠습니다. 아래 코드를 참조하십시오.
clc
time = 0:pi/500:pi;
xs1 = sin(time).*cos(10*time);
ys1 = sin(time).*sin(10*time);
zs1 = cos(time);
xs2 = sin(time).*cos(12*time);
ys2 = sin(time).*sin(12*time);
zs2 = cos(time);
plot3(xs1,ys1,zs1,'+',xs2,ys2,zs2,'d')
legend('Line1','Line2')
axis equal
xlabel('x(t)')
ylabel('y(t)')
zlabel('z(t)')
title('3D line plot')
출력:
LineStyle
속성을 사용하여 선 스타일, Color
속성을 사용하여 선 색상, LineWidth
속성을 사용하여 선 너비, MarkerSize
속성을 사용하여 마커 크기, 를 사용하여 마커 가장자리 색상과 같은 다른 속성도 변경할 수 있습니다. MarkerEdgeColor
속성, 마커 면 색상 또는 MarkerFaceColor
속성을 사용하는 마커 채우기 색상.
LineSpec
속성을 사용하여 선 스타일, 마커 및 색상을 동시에 변경할 수도 있습니다. 예를 들어, 위 그래프의 일부 속성을 변경해 보겠습니다. 아래 코드를 참조하십시오.
clc
time = 0:pi/500:pi;
xs1 = sin(time).*cos(10*time);
ys1 = sin(time).*sin(10*time);
zs1 = cos(time);
plot3(xs1,ys1,zs1,'LineStyle','--','Color','red','LineWidth',3)
legend('Line1','Line2')
axis equal
xlabel('x(t)')
ylabel('y(t)')
zlabel('z(t)')
title('3D line plot')
출력:
plot3()
함수의 선 스타일은 실선의 경우 -
, 파선의 경우 --
, 점선의 경우 :
, 점선의 경우 -
입니다. 점선의 경우. 색상 이름이나 RGB 3색 값을 사용하여 선이나 마커의 색상을 변경할 수 있습니다.
기본 선 너비는 0.5이지만 양수 값을 사용하여 값을 설정할 수 있습니다. 마커 크기 값은 기본적으로 6이지만 양수 값으로 변경할 수 있습니다.
기본적으로 마커 가장자리 색상은 자동
으로 설정되고 마커 면 색상은 없음
으로 설정되지만 색상 이름 또는 RGB 3색 값을 사용하여 마커에 모든 색상을 지정할 수 있습니다.
관련 문장 - MATLAB Plot
- MATLAB 폭포 플롯
- MATLAB의 막대 그래프 레이블에서 그리스 기호 사용
- MATLAB 극좌표 플롯
- MATLAB의 단일 산점도에 여러 데이터 세트 플로팅하기
- MATLAB의 caxis() 함수
- MATLAB에서 범례 제목 변경