Форум программистов, компьютерный форум, киберфорум
Matlab
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
0 / 0 / 0
Регистрация: 04.10.2016
Сообщений: 6

Повторный запуск программы с функцией plotyy

04.10.2016, 17:19. Показов 1527. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте! Помогите пожалуйста. Вот часть моей программы:
Matlab M
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
pd2=P2(1,1:razm);
pd3=P3(1,1:razm);
[h1,h2,h3]=plotyy(t,i_k,t,qN);
set(h1(1),'ytick',0:5:30,'yLim',[0 30]);
set(h1(2),'ytick',0:20:100,'yLim',[0 130]);
   grid on;
   hold on 
axes(h1(1)) 
   grid on;
   hold on 
h5=plot(t,u);
  grid on;
  hold on 
h7=plot(t,pd2);
  grid on;
  hold on 
h8=plot(t,pd3);
axes(h1(2)) 
   grid on;
   hold on 
h6=plot(t,q1);
Когда я запускаю программу первый раз, всё хорошо. А при повторном, на графике всё путается. И график с левой оси строится на правой оси.
Миниатюры
Повторный запуск программы с функцией plotyy   Повторный запуск программы с функцией plotyy  
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
04.10.2016, 17:19
Ответы с готовыми решениями:

Предотвратить повторный запуск программы
Приветствую Возникла проблема: Если запустить program.exe ещё раз (когда один экземпляр уже запущен) то возникает ошибка. Вопрос: ...

Запрет на повторный запуск программы
Ничего, работающего на wpf, не нашел. Ну не считая использования мьютекса, где-то в каком-то далеком файле проекта. В этой ветке находил...

Как запретить повторный запуск программы
При загрузке формы запретить запуск этой формы еще раз , допустим что бы выводило "Это программа уже запущена!".

10
 Аватар для Krasme
7251 / 5104 / 2151
Регистрация: 02.02.2014
Сообщений: 13,466
04.10.2016, 17:38
стирать график надо... в начале кода, или перед функций plotyy
Matlab M
1
clf;
1
0 / 0 / 0
Регистрация: 04.10.2016
Сообщений: 6
05.10.2016, 06:38  [ТС]
В обычной программе это действительно помогает, а в GUI не может использоваться((( Тогда всё выходит пустым...
0
Эксперт по математике/физике
 Аватар для SSC
3390 / 1913 / 571
Регистрация: 09.04.2015
Сообщений: 5,365
05.10.2016, 07:33
Попробуй после вывода последнего графика выключить "заморозку"
Matlab M
1
hold off
1
0 / 0 / 0
Регистрация: 04.10.2016
Сообщений: 6
05.10.2016, 13:08  [ТС]
Спасибо! Выход конечно, но тогда он смещается. Можно конечно первоначальный график на середину поставить, но есть ещё какой-нибудь выход?
Миниатюры
Повторный запуск программы с функцией plotyy  
0
0 / 0 / 0
Регистрация: 04.10.2016
Сообщений: 6
05.10.2016, 13:20  [ТС]
SSC, Вы это имели ввиду?
Matlab M
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
[h1,h2,h3]=plotyy(t,i_k,t,qN);
set(h1(1),'ytick',0:5:30,'yLim',[0 30]);
set(h1(2),'ytick',0:20:100,'yLim',[0 130]);
   grid on;
   hold on 
axes(h1(1)) 
   grid on;
   hold on 
h5=plot(t,u);
  grid on;
  hold on 
  h7=plot(t,pd2);
  grid on;
  hold on 
h8=plot(t,pd3);
axes(h1(2)) 
   grid on;
   hold on 
h6=plot(t,q1);
  grid on;
  hold off 
legend('qN','q1','i','u','P2','P3');
set(h2,'LineWidth',2);
set(h3,'LineWidth',2,'LineStyle',':');
set(h5,'LineWidth',2,'LineStyle','--');
set(h6,'LineWidth',2);
set(h7,'LineWidth',2,'LineStyle','-.');
set(h8,'LineWidth',2,'LineStyle','--');
0
Эксперт по математике/физике
 Аватар для SSC
3390 / 1913 / 571
Регистрация: 09.04.2015
Сообщений: 5,365
05.10.2016, 14:14
Цитата Сообщение от АнастасияПочему Посмотреть сообщение
SSC, Вы это имели ввиду?
Извините я несколько не увидел проблему полностью. В нелпах и примерах, да и сам пробуя разные варианты не получал успешных результатов по построению более 2-х графиков в plotyy (в таком вольном подходе как и Вы делаете).
Однако есть работающий пример построения 3-х графиков (а следовательно можно и больше), но как управлять в этом случае свойствами линий графика надо разбираться.
Matlab M
1
2
3
4
5
6
7
8
9
x = linspace(0,10);
y1 = 200*exp(-0.05*x).*sin(x);
y2 = 0.8*exp(-0.5*x).*sin(10*x);
y3 = 0.2*exp(-0.5*x).*sin(10*x);
y4 = 150*exp(-0.6*x).*sin(4*x);
 
figure
%[hAx,hLine1,hLine2] = plotyy(x,y1,[x',x'],[y2',y3']);
[hAx,hLine1,hLine2] = plotyy([x',x'],[y1',y4'],[x',x'],[y2',y3']);
Добавлено через 4 минуты
Посмотрите еще вот такой пример по ссылке, но у меня на версии 2012b он не работает
https://www.mathworks.com/help... -axes.html
0
0 / 0 / 0
Регистрация: 04.10.2016
Сообщений: 6
05.10.2016, 14:18  [ТС]
SSC, Спасибо! Получилось!!
Matlab M
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
[COLOR="Red"]axes(handles.axes1);
cla;[/COLOR]
[h1,h2,h3]=plotyy(t,i_k,t,qN);
set(h1(1),'ytick',0:5:30,'yLim',[0 30]);
set(h1(2),'ytick',0:20:100,'yLim',[0 130]);
   grid on;
   hold on 
axes(h1(1)) 
   grid on;
   hold on 
h5=plot(t,u);
  grid on;
  hold on 
h7=plot(t,pd2);
  grid on;
  hold on 
h8=plot(t,pd3);
axes(h1(2)) 
   grid on;
   hold on 
h6=plot(t,q1);
[COLOR="red"]  hold off [/COLOR]
legend('qN','q1','i','u','P2','P3');
set(h2,'LineWidth',2);
set(h3,'LineWidth',2,'LineStyle',':');
set(h5,'LineWidth',2,'LineStyle','--');
set(h6,'LineWidth',2);
set(h7,'LineWidth',2,'LineStyle','-.');
set(h8,'LineWidth',2,'LineStyle','--');
0
Эксперт по математике/физике
 Аватар для SSC
3390 / 1913 / 571
Регистрация: 09.04.2015
Сообщений: 5,365
05.10.2016, 14:39
АнастасияПочему, и Вам спасибо за последний пример, я тоже увидел в нем некоторые вещи которые не знал.
В вашем коде несколько избыточны команды grid on; и hold on; аккуратно попробуйте уменьшить их количество.
hold on; должно быть достаточно первого.
1
0 / 0 / 0
Регистрация: 04.10.2016
Сообщений: 6
06.10.2016, 10:20  [ТС]
Когда строю графики второй раз, старые оси остаются(( Может кто-то сталкивался с такой проблемой...
Миниатюры
Повторный запуск программы с функцией plotyy  
0
Эксперт по математике/физике
 Аватар для SSC
3390 / 1913 / 571
Регистрация: 09.04.2015
Сообщений: 5,365
06.10.2016, 11:06
Вместо cla; поставте
Matlab M
1
cla reset;
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
06.10.2016, 11:06
Помогаю со студенческими работами здесь

Повторный запуск main() равен перезапуску программы?
Добрый день. Если в коде какой либо функции я вызову main() c которой у меня начинается выполнение программы, то будет ли это равно...

Повторный запуск
На работе создал скрипт-программу backup.ps1 которая бекапит базу пользователей каждые 30 минут, выполняет некоторые обработки и сохраняет...

Повторный запуск цикла
Господа ! Возникла новая проблема, в этот раз с VB =D Во-первых, когда я прописываю "stop" цикл конечно же...

Повторный запуск приложения
Пишу программу для сферы бесопастности, как известно любую программу можно убить через диспечера задач.:wall: Ребят подскажите в каком...

Повторный запуск метода
Это часть кода для запуска wcf службы. Запускаю вызывая Start(), останавливаю соответственно через Stop(). Все это находится в отдельном...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru