having an issue in App Designer clearing plots

5 ビュー (過去 30 日間)
J. Webster
J. Webster 2016 年 4 月 13 日
コメント済み: Matthew Ward 2021 年 1 月 14 日
In the application I'm developing, and I'd like to make it so that the data that is plotted will be based on which checkboxes are checked. The block of code that does this is below. My problem is that the clf doesn't clear the figure. Each time this code runs, then I get a new set of data plotted on top of the old set of data.
Am I doing something wrong?
clf(app.UIAxesDay);
hold(app.UIAxesDay, 'on');
if app.CheckBoxMPFV.Value
plot(app.UIAxesDay, walknum, mpfv,'-o' );
end
if app.CheckBoxMST.Value
plot(app.UIAxesDay, walknum, mst, '-o' );
end
if app.CheckBoxMSD.Value
plot(app.UIAxesDay, walknum, msd, '-o' );
end
ylim(app.UIAxesDay, [0 7]);
hold(app.UIAxesDay, 'off');

採用された回答

Mike Garrity
Mike Garrity 2016 年 4 月 13 日
Well, clf probably isn't what you want anyways. It's job is to remove everything from a figure, and it sounds like you have checkboxes in the figure. It would also delete the axes that you've named UIAxesDay, and you'd need to create a new one.
I think that what you probably want is cla. It's job is to remove everything from an axes. You'd use it like this:
cla(app.UIAxesDay)
  3 件のコメント
Kristin Schall - van Bellen
Kristin Schall - van Bellen 2020 年 7 月 30 日
What can you do, if cla is not working?
Matthew Ward
Matthew Ward 2021 年 1 月 14 日
app.UIAxes.cla works for me, but does not clear patch objects.

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

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeDevelop Apps Using App Designer についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by