0

整数の行列があるとします。値を色にマッピングしたい。たとえば、値 0 は黒として表示され、値 0.5 は緑として表示されます。カラーマップを試しましたが、思いどおりに動作しません。カラーマップでは、マトリックスの値を変更すると、他の値にも影響します。

では、どうすれば色を値にマッピングできますか? セルには黒で表示される 0 が含まれます。セルには、緑色で表示された 0.5 が含まれています。セルには、黄色で表示される 1 以上の数値が含まれています。

ありがとう!

4

1 に答える 1

0

あなたが言っているようなことをするのに私が考える最も簡単な方法は次のとおりです。

  • 次のように定義しcolormapます。

    cm = colormap([0 0 0; 0 1 0; 1 1 0]);

  • 次のように定義しcaxisます。

    caxis([0 1]);

  • のようなものを使用pcolorしてデータを表します。

これらはすべて、ある種のカラーマップを2Dで表現したいことを前提としています。単純な曲線をプロットするが、データポイントの色を変更する場合は、データの値に応じて、手動でプロットし、各ポイントの色を手動で設定する必要があります。

% plot y versus x variable
for ii = 1:length(x)
    if y(ii) < 0.5
        color = [0 0 0];
    elseif y(ii) < 1
        color = [0 1 0];
    else
        color = [1 1 0];
    end
    plot(x(ii), y(ii), '.', 'Color', color);
    hold on;
end
hold off;
于 2013-02-12T12:54:08.860 に答える