Рисование эллипса в gnuplot с использованием большой оси, малой оси
Я пытаюсь нарисовать простой эллипс с помощью gnuplot, но везде, где я читаю, нужны точки данных для построения эллипса.
Есть ли в gnuplot команда, в которой эллипс нарисован просто путем ввода полуосновного, полуосновного, центра эллипса и угла?
что-то вроде одного лайнера.
4 ответа
Это сделало задачу
центр есть центр; размер большой, малый, угол - угол
set object 1 ellipse center 1.5, 1 size 6, 12 angle 60 front fs empty bo 3
plot '-' with points
Конечно, нужно выполнить обычную задачу, такую как установка диапазонов, терминала и т. Д. Заранее.
Это легко сделать в параметрическом режиме:
a = 5.
b = 2.
set parametric
plot [0:2*pi] a*cos(t), b*sin(t)
Просто для записи, в дополнение к ответу @emmanuel, который использует системный вызов и работает для gnuplot>=5.0.
Вот решение без системного вызова, которое работает и для gnuplot>=4.6.0 (март 2012 г.). Специальное имя файла'+'
используется. Опцияevery ::::0
используется для построения только одного эллипса.
plot '+' u (0):(0):(2):(1):(45) every ::::0 w ellipses
Если вам нужно построить несколько разных эллипсов, вы можете поместить свои параметры в файл или блок данных.
Если вы используете gnuplot из оболочки bash, вы можете сделать:
plot "<( echo x y a b angle )" w ellipses
Пример:
plot "<( echo 0 0 2 1 45 )" w ellipses