Filter löschen
Filter löschen

ラジオボタンによるプロット線の仕様変更について

3 Ansichten (letzte 30 Tage)
RK
RK am 27 Jul. 2021
Kommentiert: RK am 28 Jul. 2021
MATLAB appの作成を検討しています。
ラジオボタンでプロット線の仕様を適宜変更することは可能でしょうか。
plot(x,y,'d')
上記のような例の'd'の部分を、ラジオボタンの選択により切替えたいと考えています。
'd'の部分に変数?を置くことは可能でしょうか。
素人質問で恐縮ですが、何卒よろしくお願い申し上げます。

Akzeptierte Antwort

Atsushi Ueno
Atsushi Ueno am 27 Jul. 2021
Bearbeitet: Atsushi Ueno am 28 Jul. 2021
>ラジオボタンでプロット線の仕様を適宜変更することは可能でしょうか
>plot(x,y,'d'):'d'の部分に変数?を置くことは可能でしょうか
どちらも可能です。サンプルアプリを作って添付しました。部分的なコードを抜粋します。(追記)線の色を選択するコードを追加/変更しました。線種と線の色を別々の文字列に設定し、plot関数に渡す時に一つの文字列に結合しています。
properties (Access = private)
myPlotStyle = '-'; % ラインスタイル(実線/破線)
myPlotColor = 'r'; % ラインスタイル(色)
function startupFcn(app) % オブジェクト作成時にプロットを実行
plot(app.UIAxes,1:0.01:2*pi,sin(1:0.01:2*pi),[app.myPlotColor app.myPlotStyle]);
end
function linetypeSelectionChanged(app, event) % ラジオボタンのコールバック関数
selectedButton = app.linetype.SelectedObject;
switch selectedButton.Text % 選択されたラジオボタンのテキスト
case 'Solid'
app.myPlotSpec = '-'; % 'Solid'ならラインスタイルを実線に
case 'Dashed'
app.myPlotSpec = '--'; % 'Dashed'ならラインスタイルを破線に
case 'Dotted'
app.myPlotSpec = ':'; % 'Dotted'ならラインスタイルを点線に
end
startupFcn(app);
end
function LineColorButtonGroupSelectionChanged(app, event)
selectedButton = app.LineColorButtonGroup.SelectedObject;
switch selectedButton.Text
case 'Red'
app.myPlotColor = 'r'; % プロットのライン色を赤に
case 'Blue'
app.myPlotColor = 'b'; % プロットのライン色を青に
case 'Green'
app.myPlotColor = 'g'; % プロットのライン色を緑に
end
startupFcn(app);
end
end
  3 Kommentare
Atsushi Ueno
Atsushi Ueno am 28 Jul. 2021
>myPlotSpecをラインスタイルに割り当てた場合、色の選択等は難しいのでしょうか
難しくはありません(私見ですが)。実際にやってみた結果で回答を更新しました。
RK
RK am 28 Jul. 2021
ご回答ありがとうございます。
度々ありがとうございました。

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu グラフィックス オブジェクトのプログラミング finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!