Математический форум Math Help Planet http://mathhelpplanet.com/ |
|
Как произвести сглаживание графика http://mathhelpplanet.com/viewtopic.php?f=22&t=52293 |
Страница 1 из 1 |
Автор: | 96BlueWater [ 29 дек 2016, 01:34 ] |
Заголовок сообщения: | Как произвести сглаживание графика |
Если вводить эти коды, точнее параметры: G:=cspline(U(T,X,P),T) f(U(T,X,P)):=interp(G,U(T,X,P),T) то spline и interp выделяются красными. уменьшить шаг не получится, т.к. график изменится и будет соответственно не правильным. Как произвести сглаживание? |
Автор: | michel [ 29 дек 2016, 10:00 ] |
Заголовок сообщения: | Re: Как произвести сглаживание графика |
У Вас функция изначально гладкая, но на графике выводится всего 6 точек. Увеличьте число точек, которое задается диапазоном для переменной i, а ещё лучше задайте вывод без указания точек (переменной i): просто задайте по оси ординат U(T,0.3,70), при этом по оси абсцисс задайте пределы от 300 до 600 (иначе по умолчанию пределы будут от -10 до 10) |
Автор: | BoxMuller [ 14 янв 2017, 14:37 ] |
Заголовок сообщения: | Re: Как произвести сглаживание графика |
Сглаживание изменит график, и он априори будет неправильным. Тут несколько вариантов: - фильтр (через усреднение) (мало точек, не подходит) - рекурсивный фильтр (мало точек, не подходит) - интерполирование - проредить по Ti и опять таки фильтр - есть методика, называется "кепстральное сглаживание спектра", она сохранит вершины и не привнесет лага здесь описана: http://recherche.ircam.fr/anasyn/schwar ... nvelo.html - можно попробовать медианное сглаживание (но сначала взять точек больше) Так или иначе придется увеличить количество точек. Можно увеличить количество точек не исказив графика, тупо отразить существующий с большим разрешением. |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа [ Летнее время ] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |