Colorbarのエラーについて

5 Ansichten (letzte 30 Tage)
ryu
ryu am 11 Apr. 2023
Kommentiert: ryu am 13 Apr. 2023
R2020aで以下のコードを実行したところエラーが出ました。
Z1 = peaks;
Z2 = membrane;
tiledlayout(2,1);
nexttile
contourf(Z1)
nexttile
contourf(Z2)
cb = colorbar;
cb.Layout.Tile = 'east';
(tiledlayoutページのコピペ、URL:https://jp.mathworks.com/help/matlab/ref/tiledlayout.html)
エラー文は
クラス 'matlab.graphics.illustration.ColorBar' のメソッド、プロパティまたはフィールド 'Layout' が認識されません。
エラー: untitled (line 9)
cb.Layout.Tile = 'east';
でした。
Layoutのが認識されない理由が全くわからず質問させていただきました。
回答いただければ幸いです。

Akzeptierte Antwort

Kojiro Saito
Kojiro Saito am 11 Apr. 2023
ドキュメントの例は最新版(現時点ではR2023a)のバージョンのものになっており、過去のバージョンのドキュメントは下記のようにhttps://jp.mathworks.com/help/releases/R2020a/matlab/ref/tiledlayout.html
のように「help」の後に「release/バージョン」を入れたURLでアクセスするか、日本語ドキュメントアーカイブのリンクから表示されます。
cb.Layout.Tile = 'east';」のところでエラーになってしまうのは、colorbar関数のlocationlayoutを設定できるのがR2021a以降で、R2020aでは対応していないためです。
対応するドキュメントを添付します。
→layoutの値は設定できません。
→layoutの値を設定できます。
  3 Kommentare
Kojiro Saito
Kojiro Saito am 12 Apr. 2023
R2020aでは共有のカラーバーを置く設定が無いので、locationを手動にして位置を指定することで実現できます。
cb = colorbar('Location', 'manual', 'Position', [0.92 0.11 0.025 0.8]);
Positionの4要素は[左からの位置, 下からの位置, 幅, 高さ] なので、好みに応じて修正してください。
ryu
ryu am 13 Apr. 2023
tiledlayoutでは実装できなかったのでsubplotで実装しなおすとうまくいきました。
何度もご丁寧に説明してくださってありがとうございました。

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Produkte


Version

R2020a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!