LINUX.ORG.RU

Контурные карты с пересечением изолиний


0

0

Надо построить изолинии уровня явно заданной 2D функции. Например, x*y в квадрате [-1:1] [-1:1]. Надо, чтобы седловые изолинии (нулевая изолиния в данном случае) пересекались.

Все известные мне рисовалки рисуют для этой ф-ции в нуле что-то странное с непересекающимися изолиниями. Очевидно, они сначала считают значения ф-ции на конечной сетке, а по ним строят изолинии. Хотелось бы на выходе векторный файл, в котором нулевые изолинии идут крест-накрест.

Есть ли в пингвине уже готовая "честная рисовалка"?

Заранее спасибо.


Костыль. Для этого можно написать/найти алгоритм нахождения седловых точек и явно указать уровень где находиться седло. К примеру тот же gnuplot умеет рисовать в pdf изолинии. Примерно так:

set contour
unset surface
set view 0, 0
#set cntrparam levels auto 30
set cntrparam levels discrete 1,2,3,4,5
splot x*y

Хотя gnuplot для изолиний не лучший вариант. Где-то я в инете хороший разбор построителей изолиний видел, но сейчас не нашел.

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

Да уж, гнуплот вообще не рисует пересекающиеся линии принципиально :)

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