主要内容

このページの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。

カラーマップの範囲の制御

MATLAB®は,作成される可視化タイプの多くについて,既定でデータの全範囲をカラーマップにマップします。データの最小値はカラーマップの最初の行にマッピングされ,最大値はカラーマップの最後の行にマッピングされます。すべての中間の値が,カラーマップの中間の行に線形にマッピングされます。

この既定のマッピングはほとんどの場合に使用できますが,任意の範囲を選択してマッピングを実行することもできます。これは選択した範囲がデータの範囲と異なる場合でも可能です。異なるマッピング範囲を選択することで,次のことが可能です。

  • データが範囲の境界上もしくは境界外のどこに位置しているかの確認。

  • データが範囲内のどこにあるかの確認。

表面Z = X + Y(-10≤X≤10および-10 Y≤≤10)について考えます。

(X, Y) = meshgrid (10:10);Z = x + y;s =冲浪(X, Y, Z);包含(“X”);ylabel (“Y”);zlabel (“Z = C”);colorbar

图中包含一个轴。坐标轴包含一个类型面对象。

表面プロットデータをカラーマップに関連付ける方法では,この表現の色を制御するプロパティについて説明しています。基本的に,表面オブジェクトのCDataプロパティには配列Cが含まれており,この配列によって表面の各グリッド点がカラーマップの色に関連付けられます。既定では,CZと等価です。ここで,Zはグリッド点でのz = f (x, y)の値を含んだ配列です。したがって,色はZの変化とともに変わります。

マッピングの範囲は,オブジェクトの这一プロパティによって制御されます。このプロパティには,[cmin cmax]の形式の2要素ベクトルが含まれています。cminの既定値はCの最小値と等しく,cmaxの既定値はCの最大値です。ここでは,这一20 [-20]です。これは,Cの範囲にZの範囲が反映されるためです。

这一20 [0]に変更することで,0以下のすべての値がカラーマップの最初の色にクリップされます。

次のコマンドは,这一プロパティを20 [0]に変更します。表面の下半分が,カラーマップの最初の色(濃い青)にマッピングされていることに注目してください。このクリップは,それらの点でCZ)と等しいがゼロ以下であるために起こります。

caxis (20 [0]);

图中包含一个轴。坐标轴包含一个类型面对象。

また,マッピング範囲を広げて,データがその範囲の中のどこに位置しているかを確認することもできます。たとえば,範囲を20 [-60]に変更すると,半分の色しか使用していない表面になります。カラーマップの下半分は,Cの範囲外の値に対応するため,それらの色は表面に表示されていません。

caxis (20 [-60]);

图中包含一个轴。坐标轴包含一个类型面对象。

メモ

这一プロパティは,カラーマップを使用する表面プロット,パッチ,イメージ,または任意のグラフィックスオブジェクトに設定できます。ただし,このプロパティはCDataMappingプロパティが“缩放”に設定されたグラフィックスオブジェクトのみに影響します。CDataMappingプロパティが“直接”に設定されている場合,Cのすべての値がスケーリングなしで直接カラーマップにインデックス付けされます。Cの1未満の値はすべて,カラーマップの最初の色にクリップされます。カラーマップの長さよりも大きなCの値はすべて,カラーマップの最後の色にクリップされます。

参考

|||

関連するトピック