Відповіді:
Проста гістограма:
set boxwidth 0.5
set style fill solid
plot "data.dat" using 1:3:xtic(2) with boxes
data.dat:
0 label 100
1 label2 450
2 "bar label" 75
Якщо ви хочете по-різному стилізувати свої бари, ви можете зробити щось на кшталт:
set style line 1 lc rgb "red"
set style line 2 lc rgb "blue"
set style fill solid
set boxwidth 0.5
plot "data.dat" every ::0::0 using 1:3:xtic(2) with boxes ls 1, \
"data.dat" every ::1::2 using 1:3:xtic(2) with boxes ls 2
Якщо ви хочете зробити кілька барів для кожного запису:
data.dat:
0 5
0.5 6
1.5 3
2 7
3 8
3.5 1
gnuplot:
set xtics ("label" 0.25, "label2" 1.75, "bar label" 3.25,)
set boxwidth 0.5
set style fill solid
plot 'data.dat' every 2 using 1:2 with boxes ls 1,\
'data.dat' every 2::1 using 1:2 with boxes ls 2
Якщо ви хочете бути хитромудрими, скористайтеся акуратними трюками з гнуплотом:
Gnuplot має psuedo-стовпці, які можна використовувати як індекс для забарвлення:
plot 'data.dat' using 1:2:0 with boxes lc variable
Далі ви можете використовувати функцію для вибору потрібних кольорів:
mycolor(x) = ((x*11244898) + 2851770)
plot 'data.dat' using 1:2:(mycolor($0)) with boxes lc rgb variable
Примітка. Вам потрібно буде додати ще пару основних команд, щоб отримати той самий ефект, що і зразкові зображення.
lc rgb variable
вас не може бути різних ключових записів.
Я просто хотів би розширити верхню відповідь, яка використовує GNUPlot для створення гістограми, для абсолютних початківців, тому що я прочитав відповідь і все ще був розгублений від потоку синтаксису.
Почнемо з написання текстового файлу команд GNUplot. Давайте називатимемо його командами.txt:
set term png
set output "graph.png"
set boxwidth 0.5
set style fill solid
plot "data.dat" using 1:3:xtic(2) with boxes
set term png
встановить GNUplot для виведення файлу .png і set output "graph.png"
є ім'ям файлу, до якого він буде виводитися.
Наступні два рядки досить зрозумілі. П’ятий рядок містить багато синтаксису.
plot "data.dat" using 1:3:xtic(2) with boxes
"data.dat"
це файл даних, над яким ми працюємо. 1:3
вказує, що ми будемо використовувати стовпчик 1 data.dat для x-координат і стовпець 3 data.dat для y-координат. xtic()
- це функція, яка відповідає за нумерацію / маркування осі x. xtic(2)
, отже, вказує на те, що ми будемо використовувати стовпчик 2 data.dat для міток.
"data.dat" виглядає приблизно так:
0 label 100
1 label2 450
2 "bar label" 75
Щоб побудувати графік, введіть gnuplot commands.txt
термінал.
Я рекомендую генератор барної графіки Дерека Брунінга Perl. Доступно за адресою http://www.burningcutlery.com/derek/bargraph/
Ви можете безпосередньо використовувати гістограми стилів, надані gnuplot. Це приклад, якщо у вас є два файли на виході:
set style data histograms
set style fill solid
set boxwidth 0.5
plot "file1.dat" using 5 title "Total1" lt rgb "#406090",\
"file2.dat" using 5 title "Total2" lt rgb "#40FF00"
histogram
стиль графіки, особливо для групування та складання значень.