Я пытаюсь сделать следующее в gnuplot: цвет с градиентом эллипса. Каждая точка эллипса имеет Z-значение, заданное с помощью функцииГрадиентная цветная полярная кривая
charge_density(t,beta) = -sin(t)*beta*(sqrt(1-(beta**2)))/(1-((sin(t)*beta)**2))
Функции радиуса эллипса задаются аналогичной функцией:
radius(t,beta) = sqrt(1-(beta**2))/sqrt(1-((sin(t)*beta)**2))
Где beta
является только параметром, удовлетворяющим 0<beta<1
, а t
- угол.
Ну, я попытался использовать специальный файл "+"
с опцией lc rgb variable
, но он не работает с полярными координатами.
Я также пробовал set mapping cylindrical
, но ничего не произошло.
Возможно ли это только с декартовыми координатами? В этом случае мне нужно будет сделать 2 графика и изменить вышеуказанные функции ...
Или мне нужно создать файл данных с данными angle, radius, z
?
Я хотел бы сделать это с pm3d
и следующим palette
:
set palette model RGB defined (-1 "blue", 0 "black", 1 "red")
Sweber, я исправил функции. Спасибо за консультацию! – Larara
Это было именно то, что мне нужно! Только одно: хотя я использовал «set parameter», именно «set xrange» и «set yrange» работали для изменения диапазонов, а не 'set urange' и' set vrange'. – Larara
Дело в том, что скрипт может содержать 'set xrange [-1: 1]'. Затем '' + "' также идет от -1 до 1. Таким образом, ваш параметр зависит от xrange, чего вы здесь не хотите. Если вы используете 'plot [0: 3 * pi]" + "...', то xrange будет автоматически установлен на [0: 9.4], переопределив команду 'set xrange'. Но с «параметрическим» это не так. И да, «set urange» здесь не действует. Как сказано, это немного странно. – sweber