LINUX.ORG.RU

gnuplot - сплайн-интерполяция в 3D


0

1

Приветствую!

Я столкнулся со следующей проблемой - как использовать сплайн-интерполяцию? В 2D режиме это просто с помощью smooth. Но мне надо в 3D отобразить линии (именно линии, не поверхности!), причем неплохо было бы соединить точки не прямыми, а сплайном.

dgrid3d как то не очень помог - он для поверхностей, вроде бы.

Please, help!

set hidden3d
set view 60,45

set multiplot

splot \
'<данные_линии_1>' notitle smooth csplines, \
'<данные_линии_2>' notitle smooth csplines, \
'<данные_линии_3>' notitle smooth csplines

unset multiplot

Даёт ли что-то подобное нужный результат?

Slimer
()
Ответ на: комментарий от Slimer

Вот что дает gnuplot. Знак ^ указывает на smooth

gnuplot> splot 'tmpPlot.txt' notitle w lp smooth csplines

gnuplot> splot 'tmpPlot.txt' notitle w lp smooth csplines
^
';' expected

Короче говоря, в том то и проблема, что smooth, по-видимому, с splot не работает. Только с plot.

P.S. Немного не въехал как сделать так, чтобы между ^ и началом строки были пробелы.

Aleksey_R
() автор топика
Ответ на: комментарий от Aleksey_R

Короче говоря, в том то и проблема, что smooth, по-видимому, с splot не работает. Только с plot.

Сейчас заглянул в документацию. К сожалению, так и есть :(

Там ещё советуют воспользоваться set cntrparams, но сразу так неясно, что нужно делать в данном случае.

Slimer
()

>причем неплохо было бы соединить точки не прямыми, а сплайном.

Есть сомнения в возможности этого. Если точно задана траектория, то после параметризации можно сделать 2d сплайн и обратным отображением на траекторию получить нужную кривую. Если же заданы только точки, по которым надо провести гладкую кривую, то задача становится переопределена.

fool_anon
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.