주요 콘텐츠

streamline

2차원 또는 3차원 벡터 데이터에서 흐름선 플로팅

  • Three-dimensional space with plotted streamlines

설명

streamline(X,Y,Z,U,V,W,startX,startY,startZ)는 3차원 벡터 데이터에 대해 플로팅된 흐름선을 반환합니다. 입력값 X, Y, Z는 벡터 데이터 좌표이고 U, V, W는 벡터 데이터이며 startX, startY, startZ는 흐름선의 시작 위치입니다.

예제

streamline(U,V,W,startX,startY,startZ)U, V, W에 대해 디폴트 좌표 데이터를 사용합니다. U, V, W의 각 요소에 대한 (x,y,z) 위치는 각각 열, 행 및 페이지 인덱스를 기반으로 합니다.

streamline(X,Y,U,V,startX,startY)는 2차원 벡터 데이터에 대해 플로팅된 흐름선을 반환합니다. 입력값 XY는 벡터 데이터 좌표이고 UV는 벡터 데이터이며 startXstartY는 흐름선의 시작 위치입니다.

예제

streamline(U,V,startX,startY)UV에 대해 디폴트 좌표 데이터를 사용합니다. UV의 각 요소에 대한 (x,y) 위치는 각각 열과 행 인덱스를 기반으로 합니다.

streamline(verts)는 (stream2, stream3 또는 streamslice에서 반환된) 꼭짓점 배열로 구성된 셀형 배열로 지정된 꼭짓점에서 흐름선을 플로팅합니다.

예제

streamline(___,options)step 또는 [step maxvert] 형식의 요소를 1개 또는 2개 가진 벡터로 정의된, 지정된 옵션을 사용하여 흐름선을 플로팅합니다. 여기서 step은 벡터 데이터를 보간하기 위한 데이터 단위의 스텝 크기이고 maxvert는 흐름선의 최대 꼭짓점 개수입니다. 위에 열거된 구문에 나와 있는 입력 인수를 조합하여 이 인수와 함께 사용하십시오.

streamline(___,Name=Value)는 하나 이상의 이름-값 인수를 사용하여 흐름선 플롯의 속성을 설정합니다. 예를 들어, 흐름선의 색과 두께를 지정할 수 있습니다. 속성 목록은 Line 속성 항목을 참조하십시오. (R2024b 이후)

streamline(ax,___)는 현재 axes 객체(gca) 대신 지정된 좌표축에 흐름선을 플로팅합니다.

lineobj = streamline(___)은 하나 이상의 Line 객체로 구성된 벡터를 반환합니다. 흐름선을 생성한 후에 속성을 수정하려면 lineobj를 사용하십시오. 속성 목록은 Line 속성을 참조하십시오.

예제

예제

모두 축소

북미 지역의 기류 측정값이 포함된 wind 데이터 세트를 불러옵니다.

  • 3차원 배열 x, y, z는 기류 측정 위치를 나타냅니다.

  • 3차원 배열 u, v, w는 3차원 벡터장의 기류 속도를 나타냅니다.

가상 입자 16개의 시작 위치를 정의합니다. 여기에서 입자는 모두 x = 80에서 시작하고 y 시작 위치의 범위는 20 ~ 50, z 시작 위치의 범위는 0 ~ 15입니다.

load wind
[startX,startY,startZ] = meshgrid(80,20:10:50,0:5:15);

startX, startY, startZ의 시작 위치 모음에서 기류 내 가상 입자의 3차원 흐름선 꼭짓점 데이터를 계산합니다.

verts = stream3(x,y,z,u,v,w,startX,startY,startZ);

streamline을 사용하여 벡터장의 3차원 볼륨을 시각화합니다. 나중에 속성을 변경할 수 있도록 line 객체를 변수 lineobj에 반환합니다.

lineobj = streamline(verts);
view(3)

Figure contains an axes object. The axes object contains 16 objects of type line.

특정 선의 특성을 변경하려면 반환된 line 객체에 대한 속성을 설정합니다. 예를 들어, 열 번째 선의 색을 녹색으로 변경하고 두께를 3으로 변경합니다.

lineobj(10).Color = "g";
lineobj(10).LineWidth = 3;

Figure contains an axes object. The axes object contains 16 objects of type line.

북미 지역의 기류 측정값이 포함된 wind 데이터 세트를 불러옵니다.

  • 3차원 배열 xy는 기류 측정 위치를 나타냅니다.

  • 3차원 배열 uv는 3차원 벡터장의 기류 속도를 나타냅니다.

배열의 5번째 페이지를 사용합니다. 가상 입자 4개의 시작 위치를 정의합니다. 여기에서 4개의 시작 위치는 (80, 20), (80, 30), (80, 40), (80, 50)입니다.

load wind
x5 = x(:,:,5);
y5 = y(:,:,5);
u5 = u(:,:,5);
v5 = v(:,:,5);
[startX,startY] = meshgrid(80,20:10:50);

stream2를 사용하여 기류 내 가상 입자의 2차원 흐름선 꼭짓점 데이터를 계산합니다.

verts = stream2(x5,y5,u5,v5,startX,startY);

streamline을 호출하여 벡터장의 2차원 행렬을 시각화합니다. 나중에 속성을 변경할 수 있도록 line 객체를 변수 lineobj에 반환합니다.

lineobj = streamline(verts);

Figure contains an axes object. The axes object contains 4 objects of type line.

특정 선의 특성을 변경하려면 반환된 line 객체에 대한 속성을 설정합니다. 예를 들어, 두 번째 선의 색을 자홍색으로 변경하고 선 스타일을 파선으로 변경합니다.

lineobj(2).Color = "m";
lineobj(2).LineStyle = "--";

Figure contains an axes object. The axes object contains 4 objects of type line.

wind 데이터셋을 불러온 후, 평면 x = 80에 있는 균일한 간격의 점에서 시작하는 흐름선의 꼭짓점을 계산합니다. 그런 다음 꼭짓점 데이터에서 흐름선을 플로팅합니다.

load wind
[startX,startY,startZ] = meshgrid(80,20:10:50,0:5:15);
verts = stream3(x,y,z,u,v,w,startX,startY,startZ);
streamline(verts)
axis tight
view(3);

Figure contains an axes object. The axes object contains 16 objects of type line.

입력 인수

모두 축소

벡터 데이터의 x축 좌표로, 2차원 배열이나 3차원 배열로 지정됩니다. Y (그리고 선택적으로 Z와) 결합하여 좌표 격자를 형성할 수 있습니다. meshgrid 함수를 사용하여 배열을 만들 수 있습니다.

XY, Z, U, V, W와 크기가 동일해야 합니다.

벡터 데이터의 y축 좌표로, 2차원 배열이나 3차원 배열로 지정됩니다. X (그리고 선택적으로 Z와) 결합하여 좌표 격자를 형성할 수 있습니다. meshgrid 함수를 사용하여 배열을 만들 수 있습니다.

YX, Z, U, V, W와 크기가 동일해야 합니다.

벡터 데이터의 z축 좌표로, 3차원 배열로 지정됩니다. XY와 결합하여 좌표 격자를 형성할 수 있습니다. meshgrid 함수를 사용하여 배열을 만들 수 있습니다.

ZX, Y, U, V, W와 크기가 동일해야 합니다.

벡터 데이터의 x 성분으로, 2차원 또는 3차원 배열로 지정됩니다. UX, Y, Z, V, W와 크기가 동일해야 합니다.

벡터 데이터의 y 성분으로, 2차원 또는 3차원 배열로 지정됩니다. VX, Y, Z, U, W와 크기가 동일해야 합니다.

벡터 데이터의 z 성분으로, 3차원 배열로 지정됩니다. WX, Y, Z, U, V와 크기가 동일해야 합니다.

x축 흐름선 시작 위치로, 벡터나 행렬로 지정됩니다. startX는 스칼라이거나 startYstartZ와 크기가 동일해야 합니다.

y축 흐름선 시작 위치로, 벡터나 행렬로 지정됩니다. startY는 스칼라이거나 startXstartZ와 크기가 동일해야 합니다.

z축 흐름선 시작 위치로, 벡터나 행렬로 지정됩니다. startZ는 스칼라이거나 startXstartY와 크기가 동일해야 합니다.

흐름선 꼭짓점으로, (stream2, stream3 또는 streamslice에서 반환된) 셀형 배열로 지정됩니다. 셀형 배열의 각 요소는 하나의 선에 대한 꼭짓점으로 구성된 행렬입니다.

흐름선 옵션으로, 다음 형식 중 하나의 요소를 1개 또는 2개 가진 벡터로 지정됩니다.

  • step

  • [step,maxvert]

step은 흐름선 분해능을 조정하고 흐름선 속도가 보간되는 꼭짓점 위치를 결정하는 데 사용되는 스텝 크기입니다. maxvert는 계산이 완료되기 전에 흐름선에 대해 계산되는 최대 꼭짓점 개수입니다.

디폴트 스텝 크기는 0.1이고 디폴트 최대 꼭짓점 개수는 10,000입니다.

대상 좌표축으로, Axes 객체로 지정됩니다. 좌표축을 지정하지 않을 경우 streamline 함수는 현재 좌표축을 사용합니다.

이름-값 인수

모두 축소

선택적 인수 쌍을 Name1=Value1,...,NameN=ValueN으로 지정합니다. 여기서 Name은 인수 이름이고 Value는 대응값입니다. 이름-값 인수는 다른 인수 뒤에 와야 하지만, 인수 쌍의 순서는 상관없습니다.

예: streamline(verts,LineWidth=2)는 2점 선 두께로 흐름선을 플로팅합니다.

참고

여기에 나와 있는 속성은 일부에 불과합니다. 전체 목록을 보려면 Line 속성 항목을 참조하십시오.

선 색으로, RGB 3색, 16진수 색 코드, 색 이름 또는 짧은 이름으로 지정됩니다.

사용자 지정 색의 경우에는 RGB 3색 또는 16진수 색 코드를 지정하십시오.

  • RGB 3색은 요소를 3개 가진 행 벡터로, 각 요소는 색을 구성하는 빨간색, 녹색, 파란색의 농도를 지정합니다. 농도의 범위는 [0,1]이어야 합니다(예: [0.4 0.6 0.7]).

  • 16진수 색 코드는 string형 스칼라 또는 문자형 벡터로, 해시 기호(#)로 시작하고 그 뒤에 3자리 또는 6자리의 16진수 숫자(0에서 F 사이일 수 있음)가 옵니다. 이 값은 대/소문자를 구분하지 않습니다. 따라서 색 코드 "#FF8800", "#ff8800", "#F80""#f80"은 모두 동일합니다.

몇몇의 흔한 색은 이름으로 지정할 수도 있습니다. 다음 표에는 명명된 색 옵션과 그에 해당하는 RGB 3색 및 16진수 색 코드가 나와 있습니다.

색 이름짧은 이름RGB 3색16진수 색 코드모양
"red""r"[1 0 0]"#FF0000"

Sample of the color red

"green""g"[0 1 0]"#00FF00"

Sample of the color green

"blue""b"[0 0 1]"#0000FF"

Sample of the color blue

"cyan" "c"[0 1 1]"#00FFFF"

Sample of the color cyan

"magenta""m"[1 0 1]"#FF00FF"

Sample of the color magenta

"yellow""y"[1 1 0]"#FFFF00"

Sample of the color yellow

"black""k"[0 0 0]"#000000"

Sample of the color black

"white""w"[1 1 1]"#FFFFFF"

Sample of the color white

"none"해당 없음해당 없음해당 없음색 없음

다음 표에는 라이트 테마와 다크 테마에서 플롯의 디폴트 색 팔레트가 나열되어 있습니다.

팔레트팔레트 색

"gem" — 라이트 테마 디폴트 값

R2025a 이전: 대부분의 플롯은 기본적으로 이 색을 사용합니다.

Sample of the "gem" color palette

"glow" — 다크 테마 디폴트 값

Sample of the "glow" color palette

orderedcolors 함수와 rgb2hex 함수를 사용하여 이러한 팔레트의 RGB 3색과 16진수 색 코드를 가져올 수 있습니다. 예를 들어, "gem" 팔레트의 RGB 3색을 가져와서 16진수 색 코드로 변환해 보겠습니다.

RGB = orderedcolors("gem");
H = rgb2hex(RGB);

R2023b 이전: RGB = get(groot,"FactoryAxesColorOrder")를 사용하여 RGB 3색을 가져옵니다.

R2024a 이전: H = compose("#%02X%02X%02X",round(RGB*255))를 사용하여 16진수 색 코드를 가져옵니다.

선 스타일로, 다음 표에 나열된 옵션 중 하나로 지정됩니다.

선 스타일설명결과 선
"-"실선

Sample of solid line

"--"파선

Sample of dashed line

":"점선

Sample of dotted line

"-."일점 쇄선

Sample of dash-dotted line, with alternating dashes and dots

"none"선 없음선 없음

선 너비로, 양의 값으로 지정됩니다(단위: 포인트). 여기서 1포인트는 1/72인치와 같습니다. 선에 마커가 있는 경우 선 너비는 마커 가장자리에도 영향을 미칩니다.

선 너비는 픽셀 너비보다 가늘 수 없습니다. 선 너비를 시스템의 픽셀 너비보다 작은 값으로 설정할 경우 선은 1픽셀 너비로 표시됩니다.

확장 기능

모두 확장

버전 내역

R2006a 이전에 개발됨

모두 확장