2016-01-25 3 views
2

У меня есть эти примеры-данные, сохраненные в test.txtЛинии Между точек данных из разных столбцов

1 2 
2 3 
3 5 
4 5 
5 6 

Я могу легко построить их

plot "test.txt" u 0:1,"" u 0:2 

результат just the data plotted

но то, что я хочу, это некоторые линии между точками данных, чтобы проиллюстрировать разницу и какие точки принадлежат одному и тому же значению x. (Фотоделал мазня ниже)

same image with lines between datapoints

Есть ли способ, я мог бы добиться этого с Gnuplot?

ответ

1

Используйте стиль векторов

plot "test.txt" u 0:1,"" u 0:2, "" u 0:1:(0):($2-$1) with vectors nohead 

Стиль векторов ожидает 4 значения, которые являются координатами х и у, х изменения (0 в данном случае), и у изменения (разница между вашими 2 колонками). Опция nohead удаляет головку стрелки, которая обычно добавляется.

Вы можете создать вектор, используя большинство спецификаций стиля линии, и при необходимости можете настроить координаты для добавления некоторого интервала. Например, установка линий черного и отступы линии на 0,1 в обоих направлениях

plot "test.txt" u 0:1, "" u 0:2, "" u 0:($1+0.1):(0):($2-$1-0.2) with vectors nohead lc "black" 

дает

enter image description here

я вручную установить диапазоны с set xrange и set yrange, чтобы соответствовать изображения, как у меня было используя несколько разные значения по умолчанию.

См. help vectors для получения дополнительной информации о стиле векторов.

Смежные вопросы