Exponent をapp designerで使う

日々の回答ありがとうございます。
app designerでグラフを作成しているのですが、
Exponent を使ってy軸を10^4にしたいと思っています。
しかし、app designerでの使い方がわかりません。
ご回答宜しくお願いします。

 Respuesta aceptada

Kenta
Kenta el 3 de Feb. de 2020

0 votos

reslut.JPG
こんにちは、上のようなイメージですか?
例えばですが、startupFcnで
app.UIAxes.YAxis.Exponent=4;
とすればよいです。詳しくは添付のmlappファイルをご覧ください。

8 comentarios

qrqr
qrqr el 4 de Feb. de 2020
初めからグラフを絵画しないで startupFcn(app)でコードでグラフを絵画すると
以下のエラーが起こります。
中かっこまたはドット インデックス式からの必要な出力は 1 つですが、2 個の結果があります。
Kenta
Kenta el 4 de Feb. de 2020
確認ですが、それは
app.UIAxes.YAxis.Exponent=4;
のところで、エラーを返しますか?このコードに中かっこは存在しないので、qrqrさんのほかのコードが間違っているかもしれないと思いました。
qrqr
qrqr el 4 de Feb. de 2020
Editada: qrqr el 4 de Feb. de 2020
app.UIAxes.YAxis.Exponent=4;
ここでエラーになります。
yyaxis(app.UIAxes,'Right')
plot(app.UIAxes,~,~)
↑上のyyaxisを使った時にエラーが出ました。
Kenta
Kenta el 4 de Feb. de 2020
そちらのmlappファイルを共有してもらえますか?そちらの状況をつかませてください。
qrqr
qrqr el 4 de Feb. de 2020
すみません。
外に出せないので同じような形で以下に書きました。
Panel_1(パネル)の上に座標軸をfor文を使って3つ表示していきます。
for i=1:3
eval("app.UIAxes"+i+" = uiaxes(app.Panel_1);");
eval("app.UIAxes"+i+".TitleFontWeight = 'bold';");
eval("app.UIAxes"+i+".BackgroundColor = [1 1 1];");
eval("app.UIAxes"+i+".Position = [10 "+(i*100)+" 500 100];");
eval("app.UIAxes"+i+".XGrid = 'on';")
eval("app.UIAxes"+i+".YGrid = 'on';")
%グラフの絵画--------------------------------
%y軸右側
eval("yyaxis(app.UIAxes"+i+",'right') ")
eval("y3=plot(app.UIAxes"+i+",[0,1,2,3,4],[2,3,4,5,6]);")
eval("hold(app.UIAxes"+i+",'on')")
%左側
eval("yyaxis(app.UIAxes"+i+",'left') ")
eval("plot(app.UIAxes"+i+",[0,1,2,3,4],[2000,3000,4000,5000,6000],'Marker','none','LineStyle','-');")
eval("app.UIAxes"+i+".YAxis.Exponent=3;")%左側だけ10^3にしたい。
end
Kenta
Kenta el 4 de Feb. de 2020
丁寧に説明いただきありがとうございます。
おそらく、exponentの式ではなく、evalの文法自体が間違ってると思うのですがいかがでしょうか。
i=1;
eval(strcat("app.UIAxes",string(i),".YTick=(-1:0.2:1)*10^4;"))
例えば上のようにしたら、UIAxes1に同様の図を作成できます。
例えば、appdesignerの前に、そちらの文法が正しいか、通常のコマンドウィンドウでお試しになられるとエラーを回避しやすくなると思います。ただ、appdesignerと通常のコマンドウィンドウでは微妙に書き方がちがうときもあり、注意が必要です。
qrqr
qrqr el 5 de Feb. de 2020
yyaxisで右軸、左軸でグラフを作成してからだとどっちをExponentするのかで
エラーが起こるみたいでした。
座標作成後、Exponentをしてからグラフを絵画すると問題なく実行できました。
Kenta
Kenta el 6 de Feb. de 2020
丁寧に教えていただきありがとうございます。2軸を用意した場合、そのようなエラーを返すのですね。勉強になりました。ありがとうございました。

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Productos

Versión

R2019a

Preguntada:

el 3 de Feb. de 2020

Comentada:

el 6 de Feb. de 2020

Community Treasure Hunt

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

Start Hunting!