2012-12-17 3 views
4

Имея данные, как:Включить точек данных в GNUPLOT гладких

38 52.26 
41 46.34 
42 49.49 

Использование smooth линий; могу ли я включить точки на линии графика, не строгая его дважды?

Сейчас я использую:

plot "foo.dat" using ($0):2 smooth csplines title "foo", \ 
       '' using ($0):2 with points title "" 

Sample graph

Extended упрощена набор данных:

38  52.26 
39  46.34 
42  57.29 
43  60.41 
44  53.57 
45  51.49 
46  48.24 
49  58.50 
50  56.85 
51  55.56 
52  62.81 
54  51.76 
55  46.94 
56  46.35 
57  52.76 
59  49.49 
62  51.78 
63  48.24 
65  54.46 
66  50.00 
+1

Вы можете попробовать 'with linespoints', но я не уверен, что это будет делать то, что вы хотите. (Мне нужен полный файл данных, чтобы поэкспериментировать с ним). Что-то не так с дополнительной строкой кода? Другими словами, вы хотите, чтобы ваш заговор выглядел по-другому? Если да, что бы вы хотели изменить? Мы сможем работать с этим, если вы дадите более подробную информацию о том, что вы ищете. – mgilson

+0

@mgilson: Да 'with linespoints' - это не то, что я хочу, как заданные точки в данном интервале точек, а не в« точках данных ». Ничего плохого в этой «дополнительной линии», но задавался вопросом, есть ли более чистый/более правильный способ сделать это. –

+0

В этом случае я бы сказал, что нет более чистого способа сделать это (кроме как сказать '' 'используя ($ 0): 2 с точками notitle 'вместо' title' "' для второго сюжета.) – mgilson

ответ

6

Это мой способ сделать это:

... 
plot "file" using 1:3 notitle with points linestyle 1, \ 
    "" using 1:3 notitle smooth csplines with lines linestyle 1, \ 
    1/0 title "title" with linespoints linestyle 1 
... 

enter image description here

Первая запись отображает точки на графике без легенды. Вторая запись отображает сглаженную линию на графике, снова без легенды. Третья запись предназначена только для легенды, используя комбинированные линии.

Если вы используете линии линий на сглаженной линии, он отобразит все точки, делающие их гладкими, а не только точки данных.

«linestyle» сообщает, что gnuplot отображает все данные с использованием одного и того же стиля, в основном составляя линии и точки для создания точек линии. Третья строка, «linespoints», предназначена только для легенды и не помещает никаких данных на сюжет.

+4

Независимо от того, если это работает или нет, попробуйте также указать некоторые пояснения к вашему коду. Ответ на высокое качество не только даст решение, но и объяснит, как он работает/почему вы так поступаете. –

+0

большое спасибо, это было очень полезно! –

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