Surface のプロパティ
グラフの表面の外観と動作
Surface プロパティは Surface オブジェクトの外観と動作を制御します。プロパティの値を変更することによって、表面グラフの特定の要素を変更できます。プロパティのクエリと設定にはドット表記を使用します。
h = surf(...); c = h.CData; h.CDataMapping = 'direct';
面
面の色。次の表のいずれかの値として指定します。
| 値 | 説明 |
|---|---|
'flat' |
|
'interp' |
|
| RGB 3 成分、16 進数カラー コード、色名 | 指定した色をすべての面で使用します。このオプションは
|
'texturemap' | CData のカラー データを表面に適合するように変換します。 |
'none' | 面を描画しません。 |
RGB 3 成分および 16 進数カラー コードは、カスタム色を指定するのに役立ちます。
RGB 3 成分は、色の赤、緑、青成分の強度を指定する 3 成分の行ベクトルです。強度値は
[0,1]の範囲でなければなりません。たとえば[0.4 0.6 0.7]のようになります。16 進数カラー コードは、ハッシュ記号 (
#) で始まり、3 桁または 6 桁の0からFまでの範囲の 16 進数が続く文字ベクトルまたは string スカラーです。この値は大文字と小文字を区別しません。したがって、カラー コード"#FF8800"、"#ff8800"、"#F80"、および"#f80"は等価です。
あるいは、名前を使用して一部の一般的な色を指定できます。次の表に、名前の付いた色オプション、等価の RGB 3 成分、および 16 進数カラー コードを示します。
| 色名 | 省略名 | RGB 3 成分 | 16 進数カラー コード | 外観 |
|---|---|---|---|---|
"red" | "r" | [1 0 0] | "#FF0000" |
|
"green" | "g" | [0 1 0] | "#00FF00" |
|
"blue" | "b" | [0 0 1] | "#0000FF" |
|
"cyan" | "c" | [0 1 1] | "#00FFFF" |
|
"magenta" | "m" | [1 0 1] | "#FF00FF" |
|
"yellow" | "y" | [1 1 0] | "#FFFF00" |
|
"black" | "k" | [0 0 0] | "#000000" |
|
"white" | "w" | [1 1 1] | "#FFFFFF" |
|
次の表に、ライト テーマとダーク テーマでのプロットの既定のカラー パレットを示します。
| パレット | パレットの色 |
|---|---|
R2025a より前: ほとんどのプロットで、これらの色が既定で使用されます。 |
|
|
|
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 進数カラー コードを取得します。
面の透明度。次の値のいずれかとして指定します。
範囲
[0,1]のスカラー — すべての面に一様な透明度を使用します。値1は完全に不透明で、値0は完全に透明です。0と1の間の値は半透明です。このオプションはAlphaDataプロパティの透明度値を使用しません。'flat'—AlphaDataプロパティの値に基づいて面ごとに異なる透明度を使用します。面全体の透明度は、最初の頂点の透明度値によって決まります。まずAlphaDataプロパティをZDataプロパティと同じサイズの行列として指定しなければなりません。FaceColorプロパティも、'flat'に設定しなければなりません。'interp'—AlphaDataプロパティの値に基づいて面ごとに内挿された透明度を使用します。頂点の値を内挿することにより、各面に異なる透明度が使用されます。まずAlphaDataプロパティをZDataプロパティと同じサイズの行列として指定しなければなりません。FaceColorプロパティも、'interp'に設定しなければなりません。'texturemap'—AlphaDataのデータを表面に適合するように変換します。
面に対する light オブジェクトの効果。次の値のいずれかとして指定します。
'flat'— 各面にライトを一様に適用します。この値は小平面で構成されたオブジェクトを表示する場合に使用します。'gouraud'— 面のライトを変化させます。各頂点のライトを計算し、面上でライトを線形内挿します。この値は曲面を表示する場合に使用します。'none'— light オブジェクトのライトを面に適用しません。
light オブジェクトを座標軸に追加するには、関数 light を使用します。
メモ
値 'phong' は削除されました。代わりに 'gouraud' を使用してください。
頂点の法線がカメラと反対方向の場合の面のライティング方法。次の値の 1 つとして指定します。
'reverselit'— 頂点法線がカメラに向かっているかのように面をライティングします。'unlit'— 面をライティングしません。'lit'— 頂点法線に従って面をライティングします。
このプロパティを使用すると、オブジェクトの内部と外部を見分けられます。例については、背面ライティングを参照してください。
エッジ
表示するエッジ。'both'、'row'、'column' のいずれかとして指定します。
エッジのラインの色。次のいずれかの値として指定します。既定の色は [0 0 0] で、これは黒色のエッジに対応します。
| 値 | 説明 |
|---|---|
'none' | エッジを描画しません。 |
'flat' |
|
'interp' |
|
| RGB 3 成分、16 進数カラー コード、色名 | 指定した色をすべてのエッジに使用します。このオプションは
|
RGB 3 成分および 16 進数カラー コードは、カスタム色を指定するのに役立ちます。
RGB 3 成分は、色の赤、緑、青成分の強度を指定する 3 成分の行ベクトルです。強度値は
[0,1]の範囲でなければなりません。たとえば[0.4 0.6 0.7]のようになります。16 進数カラー コードは、ハッシュ記号 (
#) で始まり、3 桁または 6 桁の0からFまでの範囲の 16 進数が続く文字ベクトルまたは string スカラーです。この値は大文字と小文字を区別しません。したがって、カラー コード"#FF8800"、"#ff8800"、"#F80"、および"#f80"は等価です。
あるいは、名前を使用して一部の一般的な色を指定できます。次の表に、名前の付いた色オプション、等価の RGB 3 成分、および 16 進数カラー コードを示します。
| 色名 | 省略名 | RGB 3 成分 | 16 進数カラー コード | 外観 |
|---|---|---|---|---|
"red" | "r" | [1 0 0] | "#FF0000" |
|
"green" | "g" | [0 1 0] | "#00FF00" |
|
"blue" | "b" | [0 0 1] | "#0000FF" |
|
"cyan" | "c" | [0 1 1] | "#00FFFF" |
|
"magenta" | "m" | [1 0 1] | "#FF00FF" |
|
"yellow" | "y" | [1 1 0] | "#FFFF00" |
|
"black" | "k" | [0 0 0] | "#000000" |
|
"white" | "w" | [1 1 1] | "#FFFFFF" |
|
次の表に、ライト テーマとダーク テーマでのプロットの既定のカラー パレットを示します。
| パレット | パレットの色 |
|---|---|
R2025a より前: ほとんどのプロットで、これらの色が既定で使用されます。 |
|
|
|
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 進数カラー コードを取得します。
エッジの透明度。次の値のいずれかとして指定します。
範囲
[0,1]のスカラー — すべてのエッジに一様な透明度を使用します。値1は完全に不透明で、値0は完全に透明です。0と1の間の値は半透明です。このオプションはAlphaDataプロパティの透明度値を使用しません。'flat'—AlphaDataプロパティの値に基づいてエッジごとに異なる透明度を使用します。まずAlphaDataプロパティをZDataプロパティと同じサイズの行列として指定しなければなりません。エッジ全体の透明度は、最初の頂点の透明度値によって決まります。EdgeColorプロパティも、'flat'に設定しなければなりません。'interp'—AlphaDataプロパティの値に基づいて、エッジごとに内挿した透明度を使用します。まずAlphaDataプロパティをZDataプロパティと同じサイズの行列として指定しなければなりません。頂点の値を内挿することにより、各エッジに一様でない透明度が使用されます。EdgeColorプロパティも、'interp'に設定しなければなりません。
ライン スタイル。次の表にリストされたオプションのいずれかとして指定します。
| ライン スタイル | 説明 | 結果として得られる線 |
|---|---|---|
"-" | 実線 |
|
"--" | 破線 |
|
":" | 点線 |
|
"-." | 一点鎖線 |
|
"none" | ラインなし | ラインなし |
ライン幅。ポイント単位の正の値として指定します。1 ポイントは 1/72 インチです。ラインがマーカーをもつ場合、ライン幅はマーカー エッジにも影響します。
ライン幅をピクセルの幅より細くすることはできません。システムでライン幅をピクセルの幅より細い値に設定すると、ラインは 1 ピクセル幅で表示されます。
垂直および水平のラインのシャープ化。'on' または 'off'、もしくは数値または logical 1 (true) または 0 (false) として指定します。'on' の値は true と等価であり、'off' の値は false と等価です。したがって、このプロパティの値を logical 値として使用できます。値は matlab.lang.OnOffSwitchState 型の on/off logical 値として格納されます。
| 値 | 説明 | 外観 |
|---|---|---|
'on' | 垂直および水平のラインをシャープ化して不均一な外観を取り除きます。 |
|
'off' | 垂直および水平のラインをシャープ化しません。均一でない太さや色でラインが表示される場合があります。 |
|
エッジに対する light オブジェクトの効果。次の値のいずれかとして指定します。
'flat'— 各エッジにライトを一様に適用します。'none'— light オブジェクトのライトをエッジに適用しません。'gouraud'— 各頂点のライトを計算し、エッジ上でライトを線形内挿します。
メモ
値 'phong' は削除されました。代わりに 'gouraud' を使用してください。
マーカー
マーカー記号。次の表に挙げる値のいずれかとして指定します。既定では、オブジェクトはマーカーを表示しません。マーカー記号を指定すると、各データ点または各頂点にマーカーが追加されます。
| マーカー | 説明 | 結果のマーカー |
|---|---|---|
"o" | 円 |
|
"+" | プラス記号 |
|
"*" | アスタリスク |
|
"." | 点 |
|
"x" | 十字 |
|
"_" | 水平線 |
|
"|" | 垂直線 |
|
"square" | 正方形 |
|
"diamond" | 菱形 |
|
"^" | 上向き三角形 |
|
"v" | 下向き三角形 |
|
">" | 右向き三角形 |
|
"<" | 左向き三角形 |
|
"pentagram" | 星形五角形 |
|
"hexagram" | 星形六角形 |
|
"none" | マーカーなし | 該当なし |
マーカー サイズ。ポイント単位の正の値として指定します。1 ポイントは 1/72 インチです。
マーカーの輪郭の色。'auto'、'flat'、RGB 3 成分、16 進数カラー コード、色名、または省略名として指定します。'auto' オプションは、EdgeColor プロパティと同じ色を使用します。'flat' オプションは頂点の CData の値を使用して色を設定します。
カスタム色を使用する場合は、RGB 3 成分または 16 進数カラー コードを指定します。
RGB 3 成分は、色の赤、緑、青成分の強度を指定する 3 成分の行ベクトルです。強度値は
[0,1]の範囲でなければなりません。たとえば[0.4 0.6 0.7]のようになります。16 進数カラー コードは、ハッシュ記号 (
#) で始まり、3 桁または 6 桁の0からFまでの範囲の 16 進数が続く string スカラーまたは文字ベクトルです。この値は大文字と小文字を区別しません。したがって、カラー コード"#FF8800"、"#ff8800"、"#F80"、および"#f80"は等価です。
あるいは、名前を使用して一部の一般的な色を指定できます。次の表に、名前の付いた色オプション、等価の RGB 3 成分、および 16 進数カラー コードを示します。
| 色名 | 省略名 | RGB 3 成分 | 16 進数カラー コード | 外観 |
|---|---|---|---|---|
"red" | "r" | [1 0 0] | "#FF0000" |
|
"green" | "g" | [0 1 0] | "#00FF00" |
|
"blue" | "b" | [0 0 1] | "#0000FF" |
|
"cyan" | "c" | [0 1 1] | "#00FFFF" |
|
"magenta" | "m" | [1 0 1] | "#FF00FF" |
|
"yellow" | "y" | [1 1 0] | "#FFFF00" |
|
"black" | "k" | [0 0 0] | "#000000" |
|
"white" | "w" | [1 1 1] | "#FFFFFF" |
|
"none" | 該当なし | 該当なし | 該当なし | 色なし |
次の表に、ライト テーマとダーク テーマでのプロットの既定のカラー パレットを示します。
| パレット | パレットの色 |
|---|---|
R2025a より前: ほとんどのプロットで、これらの色が既定で使用されます。 |
|
|
|
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 進数カラー コードを取得します。
マーカーの塗りつぶし色。'auto'、'flat'、RGB 3 成分、16 進数カラー コード、色名、または省略名として指定します。'auto' オプションは座標軸の Color プロパティと同じ色を使用します。'flat' オプションは頂点の CData の値を使用して色を設定します。
カスタム色を使用する場合は、RGB 3 成分または 16 進数カラー コードを指定します。
RGB 3 成分は、色の赤、緑、青成分の強度を指定する 3 成分の行ベクトルです。強度値は
[0,1]の範囲でなければなりません。たとえば[0.4 0.6 0.7]のようになります。16 進数カラー コードは、ハッシュ記号 (
#) で始まり、3 桁または 6 桁の0からFまでの範囲の 16 進数が続く string スカラーまたは文字ベクトルです。この値は大文字と小文字を区別しません。したがって、カラー コード"#FF8800"、"#ff8800"、"#F80"、および"#f80"は等価です。
あるいは、名前を使用して一部の一般的な色を指定できます。次の表に、名前の付いた色オプション、等価の RGB 3 成分、および 16 進数カラー コードを示します。
| 色名 | 省略名 | RGB 3 成分 | 16 進数カラー コード | 外観 |
|---|---|---|---|---|
"red" | "r" | [1 0 0] | "#FF0000" |
|
"green" | "g" | [0 1 0] | "#00FF00" |
|
"blue" | "b" | [0 0 1] | "#0000FF" |
|
"cyan" | "c" | [0 1 1] | "#00FFFF" |
|
"magenta" | "m" | [1 0 1] | "#FF00FF" |
|
"yellow" | "y" | [1 1 0] | "#FFFF00" |
|
"black" | "k" | [0 0 0] | "#000000" |
|
"white" | "w" | [1 1 1] | "#FFFFFF" |
|
"none" | 該当なし | 該当なし | 該当なし | 色なし |
次の表に、ライト テーマとダーク テーマでのプロットの既定のカラー パレットを示します。
| パレット | パレットの色 |
|---|---|
R2025a より前: ほとんどのプロットで、これらの色が既定で使用されます。 |
|
|
|
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 進数カラー コードを取得します。
このプロパティは円、正方形、菱形、星形五角形、星形六角形、4 種類の三角形のマーカー タイプにのみ影響します。
例: [0.3 0.2 0.1]
例: 'green'
例: '#D2F9A7'
直交座標データ
x 座標のデータ。ZData と同じサイズの行列または長さ n のベクトルとして指定します。ここで [m,n] = size(ZData) です。
データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | categorical | datetime | duration
XData の選択モード。次の値のいずれかとして指定します。
'auto'—ZDataの列インデックスを使用します。'manual'— 手動で指定した値を使用します。値を指定するには、プロット関数の入力引数を使用するかXDataプロパティを直接設定します。
XData にリンクされている変数。MATLAB® ワークスペースの変数名を含む文字ベクトルまたは string として指定します。MATLAB はベース ワークスペース内の変数を評価して XData を生成します。
既定ではリンクされている変数はないため、この値は空の文字ベクトル '' です。変数をリンクしても MATLAB は XData の値をすぐに更新しません。データ値の更新を強制するには、関数 refreshdata を使用します。
メモ
1 つのデータ ソース プロパティを異なる次元のデータを含む変数に変更すると、すべてのデータ ソース プロパティを適切な値に変更するまでは、関数が警告を生成し、グラフが描画されない可能性があります。
例: 'x'
y 座標のデータ。ZData と同じサイズの行列または長さ m のベクトルとして指定します。ここで [m,n] = size(ZData) です。
データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | categorical | datetime | duration
YData の選択モード。次の値のいずれかとして指定します。
'auto'—ZDataの行インデックスを使用します。'manual'— 手動で指定した値を使用します。値を指定するには、プロット関数の入力引数を使用するかYDataプロパティを直接設定します。
YData にリンクされている変数。MATLAB ワークスペースの変数名を含む文字ベクトルまたは string として指定します。MATLAB はベース ワークスペース内の変数を評価して YData を生成します。
既定ではリンクされている変数はないため、この値は空の文字ベクトル '' です。変数をリンクしても MATLAB は YData の値をすぐに更新しません。データ値の更新を強制するには、関数 refreshdata を使用します。
メモ
1 つのデータ ソース プロパティを異なる次元のデータを含む変数に変更すると、すべてのデータ ソース プロパティを適切な値に変更するまでは、関数が警告を生成し、グラフが描画されない可能性があります。
例: 'y'
z 座標のデータ。行列として指定します。
データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | categorical | datetime | duration
ZData にリンクされている変数。MATLAB ワークスペースの変数名を含む文字ベクトルまたは string として指定します。MATLAB はベース ワークスペース内の変数を評価して ZData を生成します。
既定ではリンクされている変数はないため、この値は空の文字ベクトル '' です。変数をリンクしても MATLAB は ZData の値をすぐに更新しません。データ値の更新を強制するには、関数 refreshdata を使用します。
メモ
1 つのデータ ソース プロパティを異なる次元のデータを含む変数に変更すると、すべてのデータ ソース プロパティを適切な値に変更するまでは、関数が警告を生成し、グラフが描画されない可能性があります。
例: 'z'
極座標データ
R2025a 以降
角度の値。ZData と同じサイズの行列または長さ n のベクトルとして指定します。ここで [m,n] = size(ZData) です。
このプロパティは極座標プロットにのみ適用されます。
データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | categorical | datetime | duration
R2025a 以降
半径の値。ZData と同じサイズの行列または長さ m のベクトルとして指定します。ここで [m,n] = size(ZData) です。
このプロパティは極座標プロットにのみ適用されます。
データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | categorical | datetime | duration
カラー データと透明度データ
頂点の色。次のいずれかの形式で指定します。
2 次元配列 — カラーマップの色を使用します。
CDataをZDataと同じサイズの配列に設定して各頂点の色を指定します。これらの値と現在のカラーマップとの対応はCDataMappingプロパティで決まります。FaceColorプロパティが'texturemap'に設定されている場合は、CDataをZDataと同じサイズにする必要はありません。ただし、型はdoubleまたはuint8でなければなりません。CDataの値はZDataで定義された表面に適合するようにマッピングされます。3 次元配列 — トゥルーカラーを使用します。
CDataを m×n×3 の配列に設定して各頂点の色を RGB 3 成分で指定します。ここで[m,n] = size(ZData)です。RGB 3 成分は、色の赤、緑、青成分の強度を指定する 3 成分のベクトルです。配列の最初のページは赤、2 番目のページは緑、3 番目のページは青の成分になります。表面にはカラーマップの色ではなくトゥルーカラーが使用されるので、CDataMappingプロパティは無効になります。CDataがdouble型またはsingle型の場合、RGB 3 成分の値[0 0 0]は黒に対応し、[1 1 1]は白に対応します。CDataが整数型の場合、すべてのデータの範囲を使用して表面の色が決定されます。たとえばCDataがuint8型の場合、[0 0 0]は黒に対応し、[255 255 255]は白に対応します。CDataがint8型の場合、[-128 -128 -128]は黒に対応し、[127 127 127]は白に対応します。
データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
CData の選択モード。次の値のいずれかとして指定します。
'auto'—ZDataの値を使用して色を設定します。'manual'— 手動で指定した値を使用します。値を指定するには、CDataプロパティを設定します。
CData にリンクされている変数。MATLAB ワークスペースの変数名を含む文字ベクトルまたは string として指定します。MATLAB はベース ワークスペース内の変数を評価して CData を生成します。
既定ではリンクされている変数はないため、この値は空の文字ベクトル '' です。変数をリンクしても MATLAB は CData の値をすぐに更新しません。値の更新を強制するには、関数 refreshdata を使用します。
メモ
1 つのデータ ソース プロパティを異なる次元のデータを含む変数に変更すると、すべてのデータ ソース プロパティを適切な値に変更するまでは、関数が警告を生成し、グラフが描画されない可能性があります。
色のマッピング方法。'scaled' または 'direct' として指定します。このプロパティは、CData のカラー データ値のカラーマップへのマッピングを制御するために使用します。
それぞれの方法には次の効果があります。
'direct'— 現在のカラーマップのインデックスとして値を解釈します。小数部分の値は、最近傍値の小さい方の整数に丸められます。値が
double型またはsingle型の場合、1以下の値はカラーマップの最初の色にマッピングされます。カラーマップの長さ以上の値は、カラーマップの最後の色にマッピングされます。値が
uint8、uint16、uint32、uint64、int8、int16、int32またはint64型の場合、0以下の値はカラーマップの最初の色にマッピングされます。カラーマップの長さ以上の値は、カラーマップの最後の色にマッピングされます (またはその型の範囲の上限値)。値が
logical型の場合、0の値はカラーマップの最初の色にマッピングされ、1の値はカラーマップの 2 番目の色にマッピングされます。
'scaled'— 色の最小値と最大値の間の範囲に値がスケーリングされます。座標軸のCLimプロパティには色の範囲が含まれています。
各頂点の透明度データ。ZData プロパティと同じサイズの配列として指定します。値を指定した後、FaceAlpha プロパティと EdgeAlpha プロパティを設定して透明度のタイプを制御します。FaceAlpha プロパティと EdgeAlpha プロパティの両方がスカラー値に設定されている場合、surface は AlphaData の値を使用しません。
AlphaDataMapping プロパティによって、surface が AlphaData プロパティの値をどのように解釈するかが決まります。
データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical
AlphaData の値の解釈。次の値のいずれかとして指定します。
'none'— 値を透明度値として解釈します。1 以上の値は完全に不透明に、0 以下の値は完全に透明に、0 と 1 の間の値は半透明になります。'scaled'— 値を Figure の alphamap にマッピングします。座標軸のアルファ値の範囲の最小値と最大値によって、alphamap の最初と最後の要素にマッピングされるAlphaDataの値が決まります。たとえば、アルファ値の範囲が[3 5]の場合、3以下の値は alphamap の最初の要素にマッピングされます。5以上の値は alphamap の最後の要素にマッピングされます。座標軸のALimプロパティにはアルファ値の範囲が含まれています。Figure のAlphamapプロパティには alphamap が含まれています。'direct'— Figure の alphamap のインデックスとして値を解釈します。小数部分の値は、最近傍値の小さい方の整数に丸められます。値が
double型またはsingle型の場合、1 以下の値は alphamap の最初の要素にマッピングされます。alphamap の長さ以上の値は、alphamap の最後の要素にマッピングされます。値が整数型の場合、0 以下の値は alphamap の最初の要素にマッピングされます。alphamap の長さ以上の値は、alphamap の最後の要素 (または整数型の最大値まで) にマッピングされます。整数型は
uint8、uint16、uint32、uint64、int8、int16、int32、int64です。値が
logical型の場合、0 の値は alphamap の最初の要素に、1 の値は alphamap の 2 番目の要素にマッピングされます。
法線
表面の各頂点の法線ベクトル。m×n×3 の配列として指定します。ここで [m,n] = size(ZData) です。法線ベクトルは頂点ごとに 1 つずつ指定します。
このプロパティの値を設定すると、対応するモード プロパティが manual に設定されます。法線ベクトルを指定しない場合、ライティングの計算用にこの値が自動的に生成されます。
データ型: single | double
VertexNormals の選択モード。次の値のいずれかとして指定します。
'auto'— 座標データに基づいて法線ベクトルを計算します。'manual'— 手動で指定した値を使用します。値を指定するには、VertexNormalsプロパティを設定します。
表面の各面の法線ベクトル。(m-1)×(n-1)×3 の配列として指定します。ここで [m,n] = size(ZData) です。法線ベクトルは面ごとに 1 つずつ指定します。
このプロパティの値を設定すると、対応するモード プロパティが manual に設定されます。法線ベクトルを指定しない場合、ライティングの計算用にこの値が自動的に生成されます。
データ型: single | double
FaceNormals の選択モード。次の値のいずれかとして指定します。
'auto'— 座標データに基づいて法線ベクトルを計算します。'manual'— 手動で指定した値を使用します。値を指定するには、FaceNormalsプロパティを設定します。
ライティング
周囲光の強度。[0,1] の範囲のスカラー値として指定します。周囲光は場面全体を照らす方向性のない光です。周囲光が視覚可能であるためには、座標軸に対して少なくとも 1 つの視覚可能な light オブジェクトがなければなりません。
周囲光の色は座標軸の AmbientLightColor プロパティで設定します。座標軸のすべてのオブジェクトに同じ色が使用されます。
例: 0.5
データ型: double
拡散光の強度。[0,1] の範囲のスカラー値として指定します。拡散光は座標軸の light オブジェクトからの非鏡面反射です。
例: 0.3
データ型: double
鏡面反射の強度。[0,1] の範囲のスカラー値として指定します。鏡面反射は座標軸の light オブジェクトが照らす表面上の部分です。
例: 0.3
データ型: double
鏡面スポットのサイズ。1 以上のスカラー値として指定します。ほとんどが、[5 20] の範囲の指数です。
例: 7
データ型: double
鏡面反射の色。[0,1] の範囲のスカラー値として指定します。値が 1 の場合、光源の色だけを使用して色が設定されます。値が 0 の場合、反射するオブジェクトの色と光源の色の両方を使用して色が設定されます。光源の色はライトの Color プロパティに格納されています。中間の値では、その割合は線形に変化します。
例: 0.5
データ型: double
凡例
凡例ラベル。文字ベクトルまたは string スカラーとして指定します。legend コマンドを呼び出すまで、凡例は表示されません。テキストを指定しない場合、legend は 'dataN' 形式を使用してラベルを設定します。
Annotation オブジェクトとして指定して、凡例にオブジェクトを含めます。Annotation オブジェクトの基となる IconDisplayStyle プロパティを次のいずれかの値に設定します。
"on"— 凡例にオブジェクトを含めます (既定)。"off"— 凡例にオブジェクトを含めません。
たとえば、obj という名前の Surface オブジェクトを凡例から除外するには、IconDisplayStyle プロパティを "off" に設定します。
obj.Annotation.LegendInformation.IconDisplayStyle = "off";
あるいは、関数 legend を使用して、凡例内の項目を制御することもできます。最初の入力引数を、含めるグラフィックス オブジェクトのベクトルとして指定します。最初の入力引数に既存のグラフィックス オブジェクトを指定しない場合、それは凡例に表示されません。ただし、凡例が作成された後に座標軸に追加されたグラフィックス オブジェクトは凡例には表示されません。追加の項目を避けるには、すべてのプロットを作成した後に凡例を作成することを考慮してください。
対話機能
可視性の状態。"on" または "off"、もしくは数値または logical 1 (true) または 0 (false) として指定します。"on" の値は true と等価であり、"off" の値は false と等価です。したがって、このプロパティの値を logical 値として使用できます。値は matlab.lang.OnOffSwitchState 型の on/off logical 値として格納されます。
"on"— オブジェクトを表示します。"off"— オブジェクトを削除せずに非表示にします。非表示のオブジェクトのプロパティには引き続きアクセスできます。
データ ヒントの内容。DataTipTemplate オブジェクトとして指定します。基となる DataTipTemplate オブジェクトのプロパティを変更することにより、データ ヒントに表示される内容を制御できます。プロパティの一覧については、DataTipTemplate のプロパティ を参照してください。
データ ヒントの変更の例については、カスタム データ ヒントの作成を参照してください。
メモ
DataTipTemplate オブジェクトは findobj または findall によって返されず、copyobj によってコピーされません。
コンテキスト メニュー。ContextMenu オブジェクトとして指定します。このプロパティは、オブジェクトを右クリックしたときにコンテキスト メニューを表示するために使用します。関数 uicontextmenu を使用して、コンテキスト メニューを作成します。
メモ
PickableParts プロパティが 'none' に設定されている場合または HitTest プロパティが 'off' に設定されている場合には、このコンテキスト メニューは表示されません。
選択状態。'on' または 'off'、もしくは数値または logical 1 (true) または 0 (false) として指定します。'on' の値は true と等価であり、'off' の値は false と等価です。したがって、このプロパティの値を logical 値として使用できます。値は matlab.lang.OnOffSwitchState 型の on/off logical 値として格納されます。
'on'— 選択されています。プロット編集モードでオブジェクトをクリックした場合、MATLAB はSelectedプロパティを'on'に設定します。SelectionHighlightプロパティも'on'に設定されている場合、MATLAB はオブジェクトの周囲に選択ハンドルを表示します。'off'— 選択されていません。
選択時の選択ハンドルの表示。'on' または 'off'、もしくは数値または logical 1 (true) または 0 (false) として指定します。'on' の値は true と等価であり、'off' の値は false と等価です。したがって、このプロパティの値を logical 値として使用できます。値は matlab.lang.OnOffSwitchState 型の on/off logical 値として格納されます。
'on'—Selectedプロパティが'on'に設定されているときに選択ハンドルを表示します。'off'—Selectedプロパティが'on'に設定されている場合でも選択ハンドルを表示しません。
座標軸の範囲でのオブジェクトのクリップ。'on' または 'off'、もしくは数値または logical 1 (true) または 0 (false) として指定します。'on' の値は true と等価であり、'off' の値は false と等価です。したがって、このプロパティの値を logical 値として使用できます。値は matlab.lang.OnOffSwitchState 型の on/off logical 値として格納されます。
'on'の値は座標軸の範囲外になるオブジェクトの部分をクリップします。'off'の値は座標軸の範囲外に表示される部分があってもオブジェクト全体を表示します。プロットの作成、hold onの設定、座標軸のスケーリングの固定を行ってから、元のプロットよりも大きくなるようにオブジェクトを作成した場合、オブジェクトの一部が座標軸の範囲の外に表示されることがあります。
オブジェクトを含む座標軸の Clipping プロパティは 'on' に設定しなければなりません。そうしない場合、このプロパティの効果はありません。クリップ動作の詳細については、座標軸の Clipping プロパティを参照してください。
コールバック
マウスクリック コールバック。次の値のいずれかとして指定します。
関数ハンドル
関数ハンドルと追加の引数を含む cell 配列
ベース ワークスペース内で評価される有効な MATLAB コマンドまたは MATLAB 関数の文字ベクトル (非推奨)
このプロパティは、オブジェクトをクリックしたときにコードを実行するために使用します。関数ハンドルを使用してこのプロパティを指定した場合、MATLAB はコールバックを実行するときに次の 2 つの引数をコールバック関数に渡します。
クリックしたオブジェクト — コールバック関数内から、クリックしたオブジェクトのプロパティにアクセスします。
イベント データ — 空の引数です。この引数が使用されないことを示すために、関数定義の中でこの引数をチルダ文字 (
~) に置換します。
関数ハンドルを使用してコールバック関数を定義する方法についての詳細は、グラフィックス オブジェクトのコールバックの作成を参照してください。
メモ
PickableParts プロパティが 'none' に設定されている場合または HitTest プロパティが 'off' に設定されている場合には、このコールバックは実行されません。
オブジェクト作成関数。次の値のいずれかとして指定します。
関数ハンドル。
最初の要素が関数ハンドルである cell 配列。cell 配列内のその後の要素はコールバック関数に渡される引数です。
有効な MATLAB 式を含む文字ベクトル (非推奨)。MATLAB は、この式をベース ワークスペースで評価します。
コールバックを関数ハンドル、cell 配列、または文字ベクトルとして指定する方法の詳細については、グラフィックス オブジェクトのコールバックの作成を参照してください。
このプロパティは、MATLAB がオブジェクトを作成するときに実行されるコールバック関数を指定します。MATLAB は CreateFcn コールバックを実行する前に、すべてのプロパティ値を初期化します。CreateFcn プロパティを指定しない場合、MATLAB は既定の作成関数を実行します。
既存のコンポーネントに CreateFcn プロパティを設定しても効果はありません。
このプロパティを関数ハンドルまたは cell 配列として指定した場合、コールバック関数の最初の引数を使用して、作成中のオブジェクトにアクセスできます。それ以外の場合は、関数 gcbo を使用してオブジェクトにアクセスします。
オブジェクト削除関数。次の値のいずれかとして指定します。
関数ハンドル。
最初の要素が関数ハンドルである cell 配列。cell 配列内のその後の要素はコールバック関数に渡される引数です。
有効な MATLAB 式を含む文字ベクトル (非推奨)。MATLAB は、この式をベース ワークスペースで評価します。
コールバックを関数ハンドル、cell 配列、または文字ベクトルとして指定する方法の詳細については、グラフィックス オブジェクトのコールバックの作成を参照してください。
このプロパティは、MATLAB がオブジェクトを削除するときに実行されるコールバック関数を指定します。MATLAB は、オブジェクトのプロパティを破棄する前に DeleteFcn コールバックを実行します。DeleteFcn プロパティを指定しない場合、MATLAB は既定の削除関数を実行します。
このプロパティを関数ハンドルまたは cell 配列として指定した場合、コールバック関数の最初の引数を使用して、削除されるオブジェクトにアクセスできます。それ以外の場合は、関数 gcbo を使用してオブジェクトにアクセスします。
コールバック実行制御
コールバックの割り込み。'on' または 'off'、もしくは数値または logical 1 (true) または 0 (false) として指定します。'on' の値は true と等価であり、'off' の値は false と等価です。したがって、このプロパティの値を logical 値として使用できます。値は matlab.lang.OnOffSwitchState 型の on/off logical 値として格納されます。
このプロパティは実行中のコールバックが割り込み可能かどうかを決定します。次の 2 つのコールバックの状態について考慮する必要があります。
"実行中" コールバックは、現在実行しているコールバックです。
"割り込み" コールバックは、実行中のコールバックに割り込もうとするコールバックです。
MATLAB は、コールバック キューを処理するコマンドを実行するたびにコールバックの割り込み動作を判別します。これらのコマンドには、drawnow、figure、uifigure、getframe、waitfor、pause があります。
実行中コールバックにこれらのコマンドが含まれていない場合、割り込みは発生しません。MATLAB は、実行中コールバックの実行を先に終了させ、その後に割り込みコールバックを実行します。
実行中コールバックにこれらのいずれかのコマンドが含まれている場合、実行中コールバックを所有するオブジェクトの Interruptible プロパティに応じて割り込みが発生するかどうかが決まります。
Interruptibleの値が'off'の場合、割り込みは発生しません。代わりに、割り込みコールバックを所有するオブジェクトのBusyActionプロパティに応じて、割り込みコールバックが破棄されるかコールバック キューに追加されるかが決まります。Interruptibleの値が'on'の場合、割り込みが発生します。MATLAB は、コールバック キューの次回処理時に、実行中コールバックの実行を停止し、割り込みコールバックを実行します。割り込みコールバックが完了した後、MATLAB は実行中だったコールバックの実行を再開します。
メモ
コールバックの割り込みと実行は、以下の状況では動作が異なります。
割り込みコールバックが
DeleteFcn、CloseRequestFcnまたはSizeChangedFcnコールバックの場合、Interruptibleプロパティの値にかかわらず割り込みが発生します。実行中のコールバックが関数
waitforを現在実行している場合、Interruptibleプロパティの値にかかわらず割り込みが発生します。割り込みコールバックが
Timerオブジェクトで所有されている場合、Interruptibleプロパティの値にかかわらずスケジュールに従ってコールバックが実行されます。
コールバック キューイング。'queue' または 'cancel' として指定します。BusyAction プロパティは MATLAB による割り込みコールバックの実行の処理方法を決定します。次の 2 つのコールバックの状態について考慮する必要があります。
"実行中" コールバックは、現在実行しているコールバックです。
"割り込み" コールバックは、実行中のコールバックに割り込もうとするコールバックです。
BusyAction プロパティによってコールバック キューイングの動作が決まるのは、次の両方の条件を満たす場合のみです。
これらの条件に当てはまる場合、割り込みコールバックを所有するオブジェクトの BusyAction プロパティに応じて MATLAB による割り込みコールバックの処理方法が決まります。BusyAction プロパティは次の値を取ることができます。
'queue'— 割り込みコールバックをキューに入れ、実行中のコールバックが終了した後に処理されるようにします。'cancel'— 割り込みコールバックを実行しません。
マウス クリック キャプチャ機能。次の値の 1 つとして指定します。
'visible'— 表示されている場合にマウス クリックをキャプチャします。Visibleプロパティが'on'に設定されていなければならず、Surfaceオブジェクトの色が定義されている部分をクリックしなければなりません。関連付けられている色のプロパティが'none'に設定されている部分をクリックすることはできません。プロットにマーカーが含まれている場合は、エッジまたは塗りつぶしのいずれかに色が定義されている場合にマーカー全体がクリック可能になります。Surfaceオブジェクトがクリックに応答するか、先祖がクリックに応答するかは、HitTestプロパティが決定します。'all'— 表示状態に関係なくマウス クリックをキャプチャします。Visibleプロパティを'on'または'off'に設定でき、Surfaceオブジェクトの色が設定されていない部分をクリックできます。Surfaceオブジェクトがクリックに応答するか、先祖がクリックに応答するかは、HitTestプロパティが決定します。'none'— マウス クリックをキャプチャしません。Surfaceオブジェクトをクリックすると、Figure ウィンドウの現在のビュー内でその下にあるオブジェクトまでクリックが渡されます。HitTestプロパティは無効になります。
キャプチャしたマウス クリックへの応答。'on' または 'off'、もしくは数値または logical 1 (true) または 0 (false) として指定します。'on' の値は true と等価であり、'off' の値は false と等価です。したがって、このプロパティの値を logical 値として使用できます。値は matlab.lang.OnOffSwitchState 型の on/off logical 値として格納されます。
'on'—SurfaceオブジェクトのButtonDownFcnコールバックをトリガーします。ContextMenuプロパティが定義されている場合は、コンテキスト メニューを呼び出します。'off'—Surfaceオブジェクトの先祖のうち、次のいずれかの条件を満たす最も近い先祖のコールバックをトリガーします。HitTestプロパティが、'on'に設定されている。PickablePartsプロパティが、先祖によるマウス クリックのキャプチャを有効にする値に設定されている。
メモ
PickableParts プロパティは、Surface オブジェクトがマウス クリックをキャプチャできるかどうかを決定します。キャプチャできない場合、HitTest プロパティは無効です。
この プロパティ は読み取り専用です。
削除状態。matlab.lang.OnOffSwitchState 型の on/off logical 値として返されます。
MATLAB は、DeleteFcn コールバックが実行を開始すると、BeingDeleted プロパティを 'on' に設定します。コンポーネント オブジェクトが存在しなくなるまで BeingDeleted プロパティは 'on' に設定されたままです。
クエリや変更の前にオブジェクトが削除されようとしていないか確認するために BeingDeleted プロパティの値をチェックします。
親/子
親。Axes、PolarAxes、Group または Transform オブジェクトとして指定します。
子。空の GraphicsPlaceholder 配列、または DataTip オブジェクト配列として返されます。このプロパティを使用して、チャートにプロットされるデータ ヒントのリストを表示します。
Children プロパティを使用して子の追加や削除を行うことはできません。このリストに子を追加するには、DataTip オブジェクトの Parent プロパティをチャート オブジェクトに設定します。
親の Children プロパティ内でのオブジェクト ハンドルの可視性。次の値のいずれかとして指定します。
"on"— オブジェクト ハンドルは常に表示されます。"off"— オブジェクト ハンドルは常に非表示です。このオプションは、他の関数による意図しない変更を防止するために役立ちます。HandleVisibilityを"off"に設定すると、その関数の実行中にハンドルが一時的に非表示になります。"callback"— オブジェクト ハンドルはコールバック内から、あるいはコールバックにより呼び出される関数から参照できます。しかし、コマンド ラインから呼び出される関数からは参照できません。このオプションを使用すると、コマンド ラインからのオブジェクトへのアクセスがブロックされますが、コールバック関数からのアクセスは許可されます。
オブジェクトが親の Children プロパティ内にリストされない場合、オブジェクト階層の検索またはハンドル プロパティのクエリによってオブジェクト ハンドルを取得する関数は、そのオブジェクト ハンドルを返しません。こうした関数の例としては、関数 get、findobj、gca、gcf、gco、newplot、cla、clf、および close などが挙げられます。
非表示のオブジェクト ハンドルは有効なままです。ルートの ShowHiddenHandles プロパティを "on" に設定すると、HandleVisibility プロパティの設定にかかわらず、すべてのオブジェクト ハンドルがリストされます。
識別子
この プロパティ は読み取り専用です。
グラフィックス オブジェクトのタイプ。'surface' として返されます。
オブジェクト識別子。文字ベクトルまたは string スカラーとして指定します。オブジェクトの識別子として機能する一意の Tag 値を指定できます。コードの他の部分からオブジェクトにアクセスする必要がある場合、関数 findobj を使用して Tag 値に基づいてオブジェクトを検索できます。
ユーザー データ。任意の MATLAB 配列として指定します。たとえば、スカラー、ベクトル、行列、cell 配列、文字配列、table、または構造体を指定できます。このプロパティを使用して、任意のデータをオブジェクトに保存します。
App Designer を使用している場合は、UserData プロパティを使用する代わりに、アプリでパブリック プロパティまたはプライベート プロパティを作成してデータを共有します。詳細については、App Designer アプリ内でのデータの共有を参照してください。
バージョン履歴
R2006a より前に導入UIContextMenu プロパティの設定や取得は推奨されていません。代わりに、ContextMenu プロパティを使用してください。これは、UIContextMenu プロパティと同じタイプの入力を受け入れ、同じように動作します。
UIContextMenu プロパティを削除する予定はありませんが、関数 set、get、または properties を Surface オブジェクトで呼び出す際にリストされなくなりました。
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)




































