Main Content

マーカー付きのライン プロットの作成

ライン プロットにマーカーを追加すると、複数のラインを区別したり、特定のデータ点を強調表示したりする場合に便利です。マーカーは次のいずれかの方法で追加します。

  • plot(x,y,'-s') のように、ライン仕様の入力引数にマーカー記号を含めます。

  • plot(x,y,'Marker','s') のように、名前と値のペアで Marker プロパティを指定します。

マーカー オプションのリストについては、サポートされているマーカー記号を参照してください。

ライン プロットへのマーカーの追加

ライン プロットを作成します。関数 plot を呼び出すときにライン仕様の入力引数を含めることで、各データ点にマーカーを表示します。たとえば、円形マーカー付きの実線には '-o' を使用します。

x = linspace(0,10,100);
y = exp(x/10).*sin(4*x);
plot(x,y,'-o')

マーカー記号を指定し、ライン スタイルを指定しない場合、plot はマーカーのみを表示し、マーカーを接続するラインは表示しません。

plot(x,y,'o')

あるいは、Marker プロパティを名前と値のペアとして設定することで、ラインにマーカーを追加できます。たとえば、plot(x,y,'Marker','o') は円形マーカー付きのラインをプロットします。

マーカーのサイズと色の指定

マーカー付きのライン プロットを作成します。名前と値のペアの引数を指定して関数 plot を使用し、以下のプロパティを設定することで、マーカーをカスタマイズします。

  • MarkerSize - マーカー サイズ。正の値で指定します。

  • MarkerEdgeColor - マーカーの輪郭の色。色名または RGB 3 成分で指定します。

  • MarkerFaceColor - マーカーの内部の色。色名または RGB 3 成分で指定します。

'red' のように色名の文字ベクトルを使用するか、または [0.4 0.6 0.7] のように RGB 3 成分を使用して色を指定します。RGB 3 成分は、色の赤、緑、青成分の強度を指定する 3 成分の行ベクトルです。強度値は [0,1] の範囲でなければなりません。

x = linspace(0,10,50);
y = sin(x);
plot(x,y,'-s','MarkerSize',10,...
    'MarkerEdgeColor','red',...
    'MarkerFaceColor',[1 .6 .6])

ラインに沿ったマーカーの配置の制御

1,000 個のデータ点をもつライン プロットを作成し、アスタリスクのマーカーを追加して、マーカーの位置を MarkerIndices プロパティを使用して制御します。マーカーを表示する位置のデータ点のインデックスにこのプロパティを設定します。最初のデータ点から始めて、データ点 10 個ごとにマーカーを表示します。

x = linspace(0,10,1000);
y = exp(x/10).*sin(4*x);
plot(x,y,'-*','MarkerIndices',1:10:length(y))

最大および最小のデータ点でのマーカーの表示

乱数データのベクトルを作成し、最小値と最大値のインデックスを見つけます。次に、データのライン プロットを作成します。MarkerIndices プロパティにインデックス値のベクトルを設定することで、最小データ値と最大データ値に赤のマーカーを表示します。

x = 1:100;
y = rand(100,1);
idxmin = find(y == max(y));
idxmax = find(y == min(y));
plot(x,y,'-p','MarkerIndices',[idxmin idxmax],...
    'MarkerFaceColor','red',...
    'MarkerSize',15)

既定のマーカー位置に戻す

マーカーの位置を変更した後、既定の位置に戻します。

ライン プロットを作成し、大きな正方形のマーカーをデータ点 5 個ごとに表示します。chart line オブジェクトを変数 p に割り当て、このオブジェクトの作成後にそのプロパティにアクセスできるようにします。

x = linspace(0,10,25);
y = x.^2;
p = plot(x,y,'-s');
p.MarkerSize = 10;
p.MarkerIndices = 1:5:length(y);

MarkerIndices プロパティを、1 からデータ点の数までの全インデックス値をもつベクトルである既定値にリセットします。

p.MarkerIndices = 1:length(y);

サポートされているマーカー記号

マーカー説明結果のマーカー
"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

"none"マーカーなし該当なし

ライン仕様の入力引数では、1 文字を超えるマーカー オプションはサポートされていません。別の 1 文字を使用するか、代わりに Marker プロパティを設定します。

参考

関数

プロパティ