2012-06-15 36 views
11

Tôi đang cố gắng sử dụng replot với thiết bị đầu cuối png trong Gnuplot.Gnuplot - Sử dụng replot với thiết bị đầu cuối png

Nếu tôi làm như sau tôi nhận được hai mảnh đất trên một đồ thị mà không cần bất kỳ vấn đề:

plot sin(x)/x 
replot sin(x) 

Bây giờ nếu làm như vậy cho một loại thiết bị đầu cuối png dẫn đến file png chỉ chứa những âm mưu đầu tiên.

set terminal png 
set output 'file.png' 
plot sin(x)/x 
replot sin(x) 

Tôi có thiếu thứ gì đó ở cuối để lấy lô thứ hai trong tệp png của mình không?

Trả lời

14

Đây thực sự là một câu hỏi rất hay và hành vi ở đây phụ thuộc vào thiết bị đầu cuối. Một số thiết bị đầu cuối (ví dụ: postscript) sẽ cung cấp cho bạn một trang mới cho mỗi replot. Bạn có một vài giải pháp ...

Lựa chọn đầu tiên: Bạn có thể làm cho âm mưu của bạn trước khi thiết lập các thiết bị đầu cuối/đầu ra và sau đó replot lại sau khi bạn thiết lập các thiết bị đầu cuối/đầu ra:

plot sin(x)/x 
replot sin(x) 
set terminal png 
set output 'file.png 
replot 

này tùy chọn đôi khi thuận tiện nếu bạn muốn vẽ cùng một thứ trong nhiều thiết bị đầu cuối, nhưng tôi hiếm khi sử dụng nó cho bất kỳ thứ gì khác.

Thứ hai (tốt hơn) Tùy chọn: Bạn có thể gộp nhiều ô vào một lệnh tách nhau bằng dấu phẩy.

set terminal png 
set output 'file.png' 
plot sin(x)/x, sin(x) 

Tôi rất thích cách thứ hai - khi ở trong môi trường nhiều người, đây là cách duy nhất để đặt nhiều biểu đồ trên cùng một ô. Nếu quý vị có chức năng rất dài để vẽ, bạn có thể phá vỡ sự phù hợp với sự tiếp nối dòng gnuplot của (\ ở phần cuối của dòng - Không có gì được phép sau khi \, thậm chí không khoảng trắng)

plot sin(x)/x with lines linecolor rgb "blue" linetype 7 lineweight 4, \ 
    sin(x),               \ 
    cos(x) 
+2

Cảm ơn bạn. Các lệnh này sẽ được gửi từ một tập lệnh. Tôi có thể sử dụng tùy chọn đầu tiên và 'thiết lập thiết bị đầu cuối không xác định' trước để tránh cửa sổ bật lên. Lựa chọn thứ hai làm cho nó hơi phức tạp cho những gì tôi cần. Tôi thực sự cần cách 'replot'. – Noel

+1

@Noel - Không sao cả. Vui mừng được giúp đỡ. Một điều nữa là giải pháp thứ hai sẽ hiệu quả hơn một chút. Và tôi rất vui khi biết rằng bạn đã học về thiết bị đầu cuối 'không xác định '. Đó là một góc tiện lợi của gnuplot mà hầu hết mọi người không biết. Chúc may mắn! – mgilson

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