2016-10-07 4 views
0

Я создал рисунок 1 в gnuplot, который содержит 12 баров в общей сложности, с 4 группами баров, где каждая группа состоит из 3 баров. Есть 3 вещи на графике, которые я хочу изменить, что я не знаю, как это сделать.Снять зазор между полосками

  1. Я хочу удалить небольшой промежуток, который существует между полосками каждой подгруппы.
  2. Я хотел бы иметь полные бары, которые находятся на каждом конце графика, вместо того, чтобы их разрезать пополам.
  3. Я хотел бы иметь всего одну метку для каждой группы по оси X. Например, вместо того, чтобы иметь три раза 1000 (одна подгруппа), я просто хочу 1000 письменных один раз. Я хочу одну метку для каждой подгруппы.

Рисунок 1: График, у меня есть Graph that I have

Рисунок 2: Graph, что я хочу Graph that I want

Вот данные, которые я использую:

Для первый стержень (первый бар - пустой)

# Size Average 
1000 360.48 
2000 545.94 
4000 1008.16 
8000 1982.56 

Для второго бара (бар в середине)

# Size Average 
1000 251.37 
2000 360.29 
4000 646.79 
8000 1226 

Для третьего бара (бар справа в каждой подгруппе)

# Size Average 
1000 373.01 
2000 555.34 
4000 1014.92 
8000 1999.20 

Для этого значений, у меня есть использовал следующий скрипт gnuplot

set yrange [ 0 : 2200 ] noreverse nowriteback 

set boxwidth 0.25 
plot "first-bar.dat" u ($0-.05):2:2:xtic(1) w boxerrorbars ls 4 title "First bar", \ 
    "second-bar.dat" u ($0+0.25):2:2:xtic(1) w boxerrorbars ls 5 title "Second bar", \ 
    "third-bar.dat" u ($0+0.55):2:2:xtic(1) w boxerrorbars ls 6 title "Third bar" 

Как я это делаю?

ответ

0

Используйте реальную гистограмму для такого сюжета, то есть стиль histogram черчения:

set yrange [0:*] 
set style data histogram 
set style histogram cluster gap 1 

plot 'first-bar.dat' u 2:xtic(1) ls 4 title 'first',\ 
    'second-bar.dat u 2 ls 5 title 'second',\ 
    'third-bar.dat' u 2 ls 6 title 'third' 
Смежные вопросы