Log-Log Graph, Кривая Fit на Matlab - PullRequest
0 голосов
/ 30 мая 2018

Я пытаюсь проверить свои инженерные работы с помощью Matlab.У меня есть ряд данных по x и y, которые я нанес на график Log-Log.

Результатом является кривая.

Что мне нужно сделать, это применить подгонку кривой к этому графику и показать, каково уравнение подгонки?

Я попробовал другие ответы здесь и попытался использовать polyfit и polyval, но они на самом деле не делают то, что мне нужно, но мне не хватает непосредственного понимания.

С уважением

Ответы [ 2 ]

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

Установка в лог-пространство может быть нежелательной.Скорее всего, вы хотите показать уравнение, которое наилучшим образом соответствует данным, а не преобразование данных.В результате я бы подгонял линейные данные, а затем преобразовывал их для визуализации по мере необходимости.Если это приемлемо, polyfit и polyval должны работать.

Если вы считаете, что подгонка в пространстве журнала важна, я уже использовал lsqcurvefit, но для этого требуется как набор инструментов оптимизации, так и некоторое представление о том, какую функцию вы бы хотели использовать (т.е. ваши данные лучше всего подходят)представлен 10 ^ х или х ^ 2?).Существует также набор инструментов для подгонки кривой, на который, возможно, стоит обратить внимание, если есть проблемы, которые вы могли бы идентифицировать в интерактивном режиме с помощью графического интерфейса, но их нелегко выразить словами.Это обеспечивает функцию «подгонки», которая также может быть полезна.

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

Примените polyfit к logx и logy вместо x и y, а затем, чтобы использовать подобранный результат, примените polyval к log(x) и используйте exp() для результата кполучить фактическое оснащение y:

logx = log(x);
logy = log(y);

fitp = polyfit(logx, logy, n);

newy = exp(polyval(fitp, log(newx)));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...