Переносите данные в Excel и там уже стройте график, это проще будет.
aBoomest+942.89
25.02.2022 03:23
xlswrite/xlsread
PS: Не совсем ясно зачем строить графики в экселе если можно в матлаб. Они там и красивше.
lin890.00
25.02.2022 05:07
В окне осцилограффа выбрал array, появился массив, который я скопировал в эксель, но там не указывается время(получается график строится, но нет привязки от времени моделирования).Как можно вывести время еще?Вывожу в эксель, потому что мне нужно провести касательные к полученным кривым и эксель умеет задавать мат.формулу к любой линии,в матлабе я не знаю как это делать...
aBoomest+942.89
27.02.2022 10:13
Не аррай а таймсириес выбираете и будет вам со временем.
Синюю линию как построить вручную в матлаб?мне же еще нужна ее формула (типа кх+b)
aBoomest+942.89
27.02.2022 10:14
Синий график может быть определен совершенно разными способами. Узнаете чему равно k и b - то построить не сложно.
lin890.00
27.02.2022 11:33
а как?мерить линейкой?
aBoomest+942.89
28.02.2022 05:24
Не, я к тому , что Вы знаете физический (геометрический или еще какой) смысл Вашего синего графика? Определение прямой может быть по касательной, "средняя" по МНК, способов много.
Вобще, если это одноразовая задача, то можнои линейкой. Неточно, зато быстро.
Вобщем я к тому, что нужно знать смысл прямой, а потом уже обсуждать как это сделать.
Centurio+42.00
26.02.2022 04:55
Вы в Симулинке модель строитте, что ли?
Какая у вас задача? Касательные в каких точках к графику надо провести?
Выложите данные, с которыми работаете.
lin890.00
27.02.2022 11:27
Задача провести линию через эти точки, для того чтобы проследить зависимость угла k в формуле kx+b.Так как опытов будет очень много с различным числом пусков и времени включения,не удобно обрабатывать, если просто распечатать и померить линейкой коэффициенты.Модель строю в симулинке (файл LP).
aBoomest+942.89
28.02.2022 05:26
findpeak - даст вам точки.
МНК - даст вам к икс плюс бэ.
Centurio+42.00
28.02.2022 05:36
Нужно в окне модели добавить блок simout для вывода данных в рабочее пространство.
Затем в рабочем пространстве написать код:
t=ScopeData.time;
y=simout(:,1);
[yp,tp]=findpeaks(y,t,'MinPeakProminence',100);
p=polyfit(tp,yp,1);
tfit=[t(1),t(end)];
yfit=polyval(p,tfit);
plot(t,y,tp,yp,'o',tfit,yfit)
grid on
В переменной p находятся значения коэффициентов k и b для аппроксимирующего полинома kx+b
aBoomest+942.89
28.02.2022 08:13
Ход действий вроде как верный.
lin890.00
28.02.2022 15:30
вышла ошибка
??? Error using ==> findpeaks Expected X to be one of these types:
double, single, uint8, uint16, uint32, uint64, int8, int16, int32, int64
Instead its type was struct.
Error in ==> findpeaks>parse_inputs at 54 validateattributes(X,{'numeric'},{'nonempty','real','vector'},...
Error in ==> findpeaks at 43 [X,Ph,Pd,Th,Np,Str,infIdx] = parse_inputs(X,varargin{:});
Centurio+42.00
28.02.2022 05:38
lin890.00
28.02.2022 15:46
модель не открывается, пишет ошибки..в какой версии матлаб делали?
aBoomest+942.89
28.02.2022 19:59
Вы в фаиндпикс передаете что-то не то, о чем он вам и сообщает. Проверьте переменную Х.
t=ScopeData.time;
y=simout.data(:,1);
[yp,tp]=findpeaks(y,t,'MinPeakProminence',100);
p=polyfit(tp,yp,1);
tfit=[t(1),t(end)];
yfit=polyval(p,tfit);
plot(t,y,tp,yp,'o',tfit,yfit)
grid on
Centurio+42.00
1.03.2022 04:18
Сохранил модель в старом формате
lin890.00
11.03.2022 10:31
Спасибо!Попробую открыть в 64 разрядной версии...
lin890.00
12.03.2022 12:20
Я попробовал открыть и в 2010 и 2020 версии, пишет ошибка..Вы не могли бы пересохранить?
aBoomest+942.89
18.03.2022 05:13
Так ваш код же и так работает, я же просто вашу модль запустил.
Комментарии
Переносите данные в Excel и там уже стройте график, это проще будет.
xlswrite/xlsread
PS: Не совсем ясно зачем строить графики в экселе если можно в матлаб. Они там и красивше.
В окне осцилограффа выбрал array, появился массив, который я скопировал в эксель, но там не указывается время(получается график строится, но нет привязки от времени моделирования).Как можно вывести время еще?Вывожу в эксель, потому что мне нужно провести касательные к полученным кривым и эксель умеет задавать мат.формулу к любой линии,в матлабе я не знаю как это делать...
Не аррай а таймсириес выбираете и будет вам со временем.
Пробовал,выводится только время
https://se.mathworks.com/help/matlab/ref/timeseries.html?s_tid=doc_ta
быть не может
это объект, в котором м.б. много инфы. См.ссылку.
Синюю линию как построить вручную в матлаб?мне же еще нужна ее формула (типа кх+b)
Синий график может быть определен совершенно разными способами. Узнаете чему равно k и b - то построить не сложно.
а как?мерить линейкой?
Не, я к тому , что Вы знаете физический (геометрический или еще какой) смысл Вашего синего графика? Определение прямой может быть по касательной, "средняя" по МНК, способов много.
Вобще, если это одноразовая задача, то можнои линейкой. Неточно, зато быстро.
Вобщем я к тому, что нужно знать смысл прямой, а потом уже обсуждать как это сделать.
Вы в Симулинке модель строитте, что ли?
Какая у вас задача? Касательные в каких точках к графику надо провести?
Выложите данные, с которыми работаете.
Задача провести линию через эти точки, для того чтобы проследить зависимость угла k в формуле kx+b.Так как опытов будет очень много с различным числом пусков и времени включения,не удобно обрабатывать, если просто распечатать и померить линейкой коэффициенты.Модель строю в симулинке (файл LP).
findpeak - даст вам точки.
МНК - даст вам к икс плюс бэ.
Нужно в окне модели добавить блок simout для вывода данных в рабочее пространство.
Затем в рабочем пространстве написать код:
В переменной p находятся значения коэффициентов k и b для аппроксимирующего полинома kx+b
Ход действий вроде как верный.
вышла ошибка
??? Error using ==> findpeaks
Expected X to be one of these types:
double, single, uint8, uint16, uint32, uint64, int8, int16, int32, int64
Instead its type was struct.
Error in ==> findpeaks>parse_inputs at 54
validateattributes(X,{'numeric'},{'nonempty','real','vector'},...
Error in ==> findpeaks at 43
[X,Ph,Pd,Th,Np,Str,infIdx] = parse_inputs(X,varargin{:});
модель не открывается, пишет ошибки..в какой версии матлаб делали?
Вы в фаиндпикс передаете что-то не то, о чем он вам и сообщает. Проверьте переменную Х.
Сохранил модель в старом формате
Спасибо!Попробую открыть в 64 разрядной версии...
Я попробовал открыть и в 2010 и 2020 версии, пишет ошибка..Вы не могли бы пересохранить?
Так ваш код же и так работает, я же просто вашу модль запустил.