2008-11-29 41 views

Trả lời

23
 
plot "data.dat" using 2: xtic(1) with histogram 

Đây data.dat chứa dữ liệu của form

 
title 1 
title2 3 
"long title" 5 
95

Simple biểu đồ hình cột:

bar graph

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 

Nếu bạn muốn phong cách thanh của bạn khác nhau, bạn có thể làm như sau:

multi color bar graph

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 

Nếu bạn muốn làm nhiều thanh cho mỗi mục:

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 

barchart_multi

Nếu bạn muốn được khôn lanh và sử dụng một số thủ thuật gnuplot gọn gàng:

Gnuplot có psuedo-cột có thể được sử dụng như là chỉ số để màu:

plot 'data.dat' using 1:2:0 with boxes lc variable 

barchart_multi2

Ngoài ra, bạn có thể sử dụng chức năng để chọn màu bạn muốn:

mycolor(x) = ((x*11244898) + 2851770) 
plot 'data.dat' using 1:2:(mycolor($0)) with boxes lc rgb variable 

barchart_multi3

Lưu ý: bạn sẽ phải thêm một vài lệnh cơ bản khác để có hiệu ứng tương tự như hình ảnh mẫu.

+0

Đối với nhiều ứng dụng, thuận tiện hơn khi sử dụng kiểu vẽ biểu đồ 'biểu đồ ', đặc biệt là cho các giá trị nhóm và xếp chồng. – Christoph

+0

@Christoph Xin chào, Nếu tôi muốn thêm khóa cho loại biểu đồ này? tôi nên làm gì ? Ví dụ: Nếu tôi muốn thêm một khóa cho biết dòng màu xanh là "mùa đông" và đường màu đỏ là "mùa hè" – alex

+1

@alex Không chắc chắn, trong tất cả các ví dụ đó bạn có nghĩa là: với 'lc rgb variable' bạn không thể có khác nhau các mục nhập chính. – Christoph

8

Tôi chỉ muốn mở rộng khi câu trả lời hàng đầu, sử dụng GNUPlot để tạo biểu đồ thanh, cho người mới bắt đầu tuyệt đối vì tôi đọc câu trả lời và vẫn bị nhầm lẫn với cú pháp.

Chúng tôi bắt đầu bằng cách viết một tệp văn bản của lệnh GNUplot. Hãy gọi nó là Commands.txt:

bộ hạn png

bộ đầu ra "graph.png"

bộ boxwidth 0.5

bộ phong cách điền rắn

âm mưu "data.dat" sử dụng 1: 3: xtic (2) với các hộp

"thiết lập hạn png" sẽ thiết lập gnuplot để ra một tệp .png và "set output" graph.png "" là tên của tệp mà nó sẽ xuất ra.

Hai dòng tiếp theo khá tự giải thích. Dòng thứ năm chứa rất nhiều cú pháp.

âm mưu "data.dat" sử dụng 1: 3: xtic (2) với các hộp

"data.dat" là các tập tin dữ liệu chúng tôi đang hoạt động trên. "1: 3" cho biết chúng ta sẽ sử dụng cột 1 của data.dat cho các tọa độ x và cột 3 của data.dat cho các tọa độ y. xtic() là một hàm chịu trách nhiệm đánh số/ghi nhãn trục x. xtic (2), do đó, chỉ ra rằng chúng ta sẽ sử dụng cột 2 của data.dat cho các nhãn.

"data.dat" trông như thế này:

0 nhãn 100

1 LABEL2 450

2 "nhãn thanh" 75

Để vẽ đồ thị, nhập "gnuplot commands.txt" vào terminal.

Các vấn đề liên quan