Matlabには、各サブプロットごとに個別のカラーマップを設定する機能があります。最初の引数のHAXが、軸がハンドルの親Figureため、その後のカラーマップである場合CMAP =カラーマップ(HAX、...) :Octaveのサブプロットごとにカラーマップを分離します
機能ファイル:同じ機能が
Octave docsすなわち、次のフレーズで記述しますhaxが照会または設定されます。
しかし、私は次のコードを実行しようとすると、何らかの理由ですべてのサブプロットに対して単一のカラーマップを持つことになります。
clear -all;
clc;
img = zeros(128, 128);
img(64,64) = 0.2;
rad = radon(img);
x = 1;
y = 4;
s1 = subplot(y,x,1); imagesc(img);
colormap(s1, gray);
s2 = subplot(y,x,2); imagesc(rad);
colormap(s2, hot);
colorbar;
line_img = zeros(128, 128);
line_img(64, 32:64) = 0.5;
line_img(63, 32:64) = 0.4;
line_img(63, 32:64) = 0.2;
line_rad = radon(line_img);
s3 = subplot(y,x,3); imshow(line_img);
colormap(s3, gray);
s4 = subplot(y,x,4); imagesc(line_rad);
colormap(s4, hot);
colorbar;
助けてください。私はグレースケールでソースイメージを持ち、ラドンは "ホット"でイメージを変換することを期待しています。何らかの理由でグレースケールのように最初のサブプロットを取得しています(それは実際にはありません。値0.2でポイントを初期化し、オクターブで純粋な白色を得ますが、かなり暗いグレーが予想されます)。 「ホット」カラーマップが設定されている。
ドキュメントはあなたが軸を渡す場合*親がいることを扱うことを言いますFigureの*カラーマップが変更されました。これは、同じ図形内にあるので、カラーマップが異なる各軸と同じではありません。 – Suever