gnuplot не показывает правильный масштаб по оси Y для круга - PullRequest
2 голосов
/ 05 июня 2019

Я моделирую проблему с графом с помощью gnuplot

Я строю окружность с помощью gnuplot с помощью следующей команды

set xtics 1
set ytics 1
plot 'circles.txt' with circle

мой circle.txt содержит следующие данные

0 0 3

enter image description here

самая верхняя точка на этом круге (центр в начале координат и радиус 3) должна быть (0,3), но она отображается как (0,2) на этом графике

как я могу исправить эту ошибку?

1 Ответ

2 голосов
/ 05 июня 2019

Построение с кругами предназначено для построения точек как окружностей, чтобы они были круглыми независимо от масштабирования осей. Как указано в документации по gnuplot,

Радиус всегда интерпретируется в единицах горизонтальной оси графика (x или x2). Шкала y и соотношение сторон графика игнорируются.

Вместо этого вы можете построить with ellipses; из документации на plot with ellipses:

  2 columns: x y
  3 columns: x y major_diam
  4 columns: x y major_diam minor_diam
  5 columns: x y major_diam minor_diam angle

так что вы изображаете это как

plot 'circles.txt' using 1:2:($3*2):($3*2) with ellipses

(эллипсы используют диаметр, поэтому размер должен быть третьим столбцом дважды)

или set object ellipse:

 set object ellipse at 0, 0 size 6, 6
...