Main Content

fimplicit3

3차원 음함수 플로팅하기

  • Plot 3-D implicit function

설명

예제

fimplicit3(f)x, y, z의 디폴트 구간 [-5 5]f(x,y,z) = 0으로 정의된 3차원 음함수를 플로팅합니다.

예제

fimplicit3(f,interval)x, y, z에 대한 플로팅 구간을 지정합니다.

fimplicit3(ax,___)는 현재 좌표축 대신 ax로 지정된 좌표축에 플로팅됩니다. 좌표축을 위에 나와 있는 입력 인수보다 앞에, 첫 번째 입력 인수로 지정해야 합니다.

fimplicit3(___,LineSpec)은 선 스타일, 마커 기호, 선 색을 지정합니다. 예를 들어, '-r'은 빨간색 선을 지정합니다.

예제

fimplicit3(___,Name,Value)는 하나 이상의 이름-값 쌍의 인수를 사용하여 surface 속성을 지정합니다. 예를 들어, 'FaceAlpha',0.6은 투명도 값 0.6을 지정하여 반투명 곡면을 생성하게 합니다.

예제

fs = fimplicit3(___)ImplicitFunctionSurface 객체를 반환합니다. 곡면 객체가 fs에 생성되면 이를 통해 곡면의 속성에 액세스하고 수정할 수 있습니다. 속성 목록은 ImplicitFunctionSurface 속성를 참조하십시오.

예제

모두 축소

x, y, z의 디폴트 구간 [-5,5]에 쌍곡면 x2+y2-z2=0을 플로팅합니다.

f = @(x,y,z) x.^2 + y.^2 - z.^2;
fimplicit3(f)

Figure contains an axes object. The axes object contains an object of type implicitfunctionsurface.

z에 대해 플로팅 구간을 [0 5]로 지정하여 쌍곡면 x2+y2-z2=0의 위쪽 절반을 플로팅합니다. xy에 대해서는 디폴트 구간 [-5 5]를 사용합니다.

f = @(x,y,z) x.^2 + y.^2 - z.^2;
interval = [-5 5 -5 5 0 5];
fimplicit3(f,interval)

Figure contains an axes object. The axes object contains an object of type implicitfunctionsurface.

음함수 곡면 x2+y2-z2=0을 플로팅합니다. EdgeColor 속성을 'none'으로 설정하여 선을 제거합니다. FaceAlpha 속성을 0과 1 사이의 값으로 설정하여 투명도를 추가합니다.

f = @(x,y,z) x.^2 + y.^2 - z.^2;
fimplicit3(f,'EdgeColor','none','FaceAlpha',.5)

Figure contains an axes object. The axes object contains an object of type implicitfunctionsurface.

음함수 곡면을 플로팅하고 implicit surface 객체를 변수 fs에 할당합니다.

f = @(x,y,z) 1./x.^2 - 1./y.^2 + 1./z.^2;
fs = fimplicit3(f)

Figure contains an axes object. The axes object contains an object of type implicitfunctionsurface.

fs = 
  ImplicitFunctionSurface with properties:

     Function: @(x,y,z)1./x.^2-1./y.^2+1./z.^2
    EdgeColor: [0 0 0]
    LineStyle: '-'
    FaceColor: 'interp'

  Use GET to show all properties

음함수 곡면 객체가 fs에 생성되면 이를 통해 곡면의 속성에 액세스하고 수정할 수 있습니다. 예를 들어, XRange 속성을 [0 5]로 설정하여 양의 x 값만 표시할 수 있습니다. EdgeColor 속성을 'none'으로 설정하여 선을 제거합니다. FaceAlpha 속성을 0.8로 설정하여 투명도를 추가합니다.

fs.XRange = [0 5];
fs.EdgeColor = 'none';
fs.FaceAlpha = 0.8;

Figure contains an axes object. The axes object contains an object of type implicitfunctionsurface.

입력 인수

모두 축소

플로팅할 3차원 음함수로, 명명된 함수나 익명 함수에 대한 함수 핸들로 지정됩니다.

w = f(x,y,z) 형식의 함수를 지정해야 합니다. 이 함수는 3차원 배열 입력 인수 세 개를 받고 같은 크기의 3차원 배열 출력 인수 하나를 반환해야 합니다. 최적의 성능을 구현하려면 행렬 연산자 대신 배열 연산자를 사용하십시오. 예를 들어, *(mtimes) 대신 .*(times)를 사용하십시오.

예: fimplicit3(@(x,y,z) x.^2 + y.^2 - z.^2)

x, y, z에 대한 플로팅 구간으로, 다음 형식 중 하나로 지정됩니다.

  • [min max] 형식의, 요소를 2개 가진 벡터 — x, y, z에 대해 동일한 플로팅 구간 [min max]를 사용합니다.

  • [xmin xmax ymin ymax zmin zmax] 형식의, 요소를 6개 가진 벡터 — x, y, z에 대해 서로 다른 플로팅 구간을 사용합니다. x에 대해서는 구간 [xmin xmax]에, y에 대해서는 구간 [ymin ymax]에, z에 대해서는 구간 [zmin zmax]에 플로팅합니다.

예: fimplicit3(f,[-2 3 -4 5 -3 3])

선 스타일, 마커, 색으로, 기호를 포함하는 string형 스칼라 또는 문자형 벡터로 지정됩니다. 기호는 어떤 순서로 지정해도 좋습니다. 세 가지 특성(선 스타일, 마커, 색)을 모두 지정할 필요는 없습니다. 예를 들어 선 스타일을 생략하고 마커를 지정하면 플롯은 마커만 표시하고 선은 표시하지 않습니다.

예: "--or"은 원 마커로 표시된 빨간색 파선입니다.

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

Sample of solid line

"--"파선

Sample of dashed line

":"점선

Sample of dotted line

"-."일점 쇄선

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

마커설명결과로 생성되는 마커
"o"

Sample of circle marker

"+"플러스 기호

Sample of plus sign marker

"*"별표

Sample of asterisk marker

"."

Sample of point marker

"x"십자

Sample of cross marker

"_"가로선

Sample of horizontal line marker

"|"세로선

Sample of vertical line marker

"square"정사각형

Sample of square marker

"diamond"다이아몬드

Sample of diamond marker

"^"위쪽 방향 삼각형

Sample of upward-pointing triangle marker

"v"아래쪽 방향 삼각형

Sample of downward-pointing triangle marker

">"오른쪽 방향 삼각형

Sample of right-pointing triangle marker

"<"왼쪽 방향 삼각형

Sample of left-pointing triangle marker

"pentagram"펜타그램

Sample of pentagram marker

"hexagram"헥사그램

Sample of hexagram marker

색 이름짧은 이름RGB 3색모양
"red""r"[1 0 0]

Sample of the color red

"green""g"[0 1 0]

Sample of the color green

"blue""b"[0 0 1]

Sample of the color blue

"cyan" "c"[0 1 1]

Sample of the color cyan

"magenta""m"[1 0 1]

Sample of the color magenta

"yellow""y"[1 1 0]

Sample of the color yellow

"black""k"[0 0 0]

Sample of the color black

"white""w"[1 1 1]

Sample of the color white

axes 객체입니다. 좌표축을 지정하지 않으면 fimplicit3은 현재 좌표축을 사용합니다.

이름-값 인수

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

R2021a 이전 릴리스에서는 쉼표를 사용하여 각 이름과 값을 구분하고 Name을 따옴표로 묶으십시오.

예: fimplicit3(f,'MeshDensity',50,'FaceAlpha',0.5)는 계산 지점 개수와 투명도 값을 지정합니다.

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

방향별 계산 지점 개수로, 스칼라로 지정됩니다.

면 투명도로, 범위 [0,1] 사이의 스칼라로 지정됩니다. 모든 면에 균일한 투명도를 사용합니다. 값이 1이면 완전히 불투명하고 0이면 완전히 투명합니다. 01 사이의 값을 지정하면 반투명해집니다.

면 색으로, 'interp', RGB 3색, 16진수 색 코드, 색 이름 또는 짧은 이름으로 지정됩니다. 디폴트 값 'interp'ZData 값을 기준으로 색을 보간합니다.

사용자 지정 색의 경우에는 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"해당 없음해당 없음해당 없음색 없음

다음은 MATLAB®이 여러 유형의 플롯에서 사용하는 디폴트 색의 RGB 3색과 16진수 색 코드입니다.

RGB 3색16진수 색 코드모양
[0 0.4470 0.7410]"#0072BD"

Sample of RGB triplet [0 0.4470 0.7410], which appears as dark blue

[0.8500 0.3250 0.0980]"#D95319"

Sample of RGB triplet [0.8500 0.3250 0.0980], which appears as dark orange

[0.9290 0.6940 0.1250]"#EDB120"

Sample of RGB triplet [0.9290 0.6940 0.1250], which appears as dark yellow

[0.4940 0.1840 0.5560]"#7E2F8E"

Sample of RGB triplet [0.4940 0.1840 0.5560], which appears as dark purple

[0.4660 0.6740 0.1880]"#77AC30"

Sample of RGB triplet [0.4660 0.6740 0.1880], which appears as medium green

[0.3010 0.7450 0.9330]"#4DBEEE"

Sample of RGB triplet [0.3010 0.7450 0.9330], which appears as light blue

[0.6350 0.0780 0.1840]"#A2142F"

Sample of RGB triplet [0.6350 0.0780 0.1840], which appears as dark red

선 색으로, 'interp', RGB 3색, 16진수 색 코드, 색 이름 또는 짧은 이름으로 지정됩니다. 디폴트 RGB 3색 값인 [0 0 0]은 검은색에 해당합니다. 'interp' 값은 ZData 값에 따라 가장자리에 채색합니다.

사용자 지정 색의 경우에는 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"해당 없음해당 없음해당 없음색 없음

다음은 MATLAB이 여러 유형의 플롯에서 사용하는 디폴트 색의 RGB 3색과 16진수 색 코드입니다.

RGB 3색16진수 색 코드모양
[0 0.4470 0.7410]"#0072BD"

Sample of RGB triplet [0 0.4470 0.7410], which appears as dark blue

[0.8500 0.3250 0.0980]"#D95319"

Sample of RGB triplet [0.8500 0.3250 0.0980], which appears as dark orange

[0.9290 0.6940 0.1250]"#EDB120"

Sample of RGB triplet [0.9290 0.6940 0.1250], which appears as dark yellow

[0.4940 0.1840 0.5560]"#7E2F8E"

Sample of RGB triplet [0.4940 0.1840 0.5560], which appears as dark purple

[0.4660 0.6740 0.1880]"#77AC30"

Sample of RGB triplet [0.4660 0.6740 0.1880], which appears as medium green

[0.3010 0.7450 0.9330]"#4DBEEE"

Sample of RGB triplet [0.3010 0.7450 0.9330], which appears as light blue

[0.6350 0.0780 0.1840]"#A2142F"

Sample of RGB triplet [0.6350 0.0780 0.1840], which appears as dark red

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

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

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픽셀 너비로 표시됩니다.

  • 성능을 최적화하고 경고 메시지가 표시되지 않도록 하려면 요소별 연산자를 사용하십시오. 예를 들어, x*y 대신 x.*y를 사용하십시오. 자세한 내용은 배열 연산과 행렬 연산 항목을 참조하십시오.

  • 차트를 확대하는 경우 fimplicit3이 데이터를 다시 계산합니다. 이 과정에서 숨겨진 세부 정보가 드러날 수 있습니다.

버전 내역

R2016b에 개발됨