Matlab удалить предыдущий сюжет - PullRequest
0 голосов
/ 26 мая 2018

Я создаю график внутри GUIDE и хочу, чтобы, когда я изменял несколько параметров и нажимал кнопку запуска, которую я вставил в свой графический интерфейс, предыдущий график исчезал, а новый, основанный на новых параметрах, показывался.

Прямо сейчас я строю график следующим образом

h1=plot(x1(ii)*1000,y1(ii)*1000,'o','MarkerSize',5,'color',C{ii});
hold on; grid on;
plot(x2(ii)*1000,y2(ii)*1000,'x','MarkerSize',10,'color',C{ii});
drawnow

Используя drawnow, когда я изменяю параметры x2,y2, отображается новый график, но предыдущие значения x2,y2 остаются.Как я могу удалить старые значения и обновить график, используя новые значения?

1 Ответ

0 голосов
/ 26 мая 2018

Если вы используете Matlab 2014b или новее, вы можете использовать line, возвращаемое plot.См. справку по matlab для получения более подробной информации.

h1 = plot(x1(ii)*1000,y1(ii)*1000,'o','MarkerSize',5,'color',C{ii});
hold on; grid on;
h2 = plot(x2(ii)*1000,y2(ii)*1000,'x','MarkerSize',10,'color',C{ii});
drawnow

Затем, когда вы захотите изменить строку h2, вы можете просто переназначить XData и YData

h2.XData = x2(ii)*2000;
h2.YData = y2(ii)*2000;
...