Live Script calls multiple functions that produce a plot, but only the last one shows up.

4 ビュー (過去 30 日間)
It looks something like this:
function LiveScript
plot1
plot2
end
function plot1
x = 0:pi/100:2*pi;
y = cos(x);
plot(x,y)
end
function plot2
x = 0:pi/100:2*pi;
y = sin(x);
plot(x,y)
end
LiveScript()
How do I get it to show all plots?
  1 件のコメント
Nando
Nando 2025 年 6 月 12 日
I'd be okay if they were different tabs in one window instead of in the Live Script Output, if that helps

サインインしてコメントする。

採用された回答

Walter Roberson
Walter Roberson 2025 年 6 月 12 日
Graphics calls that are made directly from LiveScript output in-line, and each time a plot would be erased it instead starts a new plot leaving the old one visible.
Graphics calls that are made from .m files follow the older rules that commands that would cause a plot to be erased... just erase the previous plot ready to draw over it.
You will need to use one of:
  • figure() (not sure about uifigure())
  • subplot()
  • tiledlayout() / nexttile()
Or you could have plot1() and plot2() return the data and plot the results within the LiveScript.

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeAnnotations についてさらに検索

製品


リリース

R2023b

Community Treasure Hunt

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

Start Hunting!

Translated by