2012-08-22 32 views

Trả lời

9

Điều này phụ thuộc vào giao diện của bạn trông như thế nào. Nếu bạn chèn một không gian trống trong datafile của bạn, nó sẽ không kết nối những điểm lân cận (Đây là cách dễ nhất):

xem xét:

#datafile 
1 2 
2 3 

4 2 
5 3 

và sau đó kịch bản để vẽ nó:

plot 'datafile' u 1:2 w linespoints 

Có các thủ thuật khác mà bạn có thể phát với dữ liệu bị thiếu: set datafile missing. Một tài liệu tham khảo tốt cho việc này là sự trợ giúp nội trang (help missing).

+0

Cảm ơn, nhưng datafile của tôi không chỉ chứa 2 cột: –

+0

Cảm ơn, nhưng da của tôi tafile chứa nhiều cột, chỉ 1 trong số các cột đó thiếu điểm dữ liệu. Vì vậy, tôi không thể thêm một dòng trống, điều này sẽ gây ra colums/dòng khác không liên tục. Hãy để tôi cố đính kèm một tệp riêng cho cột này, nó có thể hoạt động. –

+0

@CharryWong - Đó là nơi 'đặt datafile thiếu' một phần của câu trả lời của tôi đi kèm. – mgilson

0

Đối với một ô, hãy sử dụng set datafile missing để chỉ định chuỗi ký tự có nghĩa là giá trị bị thiếu và thông số using $ để đảm bảo gnuplot để lại khoảng trống trong dòng cho giá trị bị thiếu. Các thông số using khác nhau được mô tả trong số gnuplot documentation for set datafile missing.

Trường hợp số cột được chỉ định dưới dạng biến, điều này phức tạp hơn một chút. Ví dụ, để vẽ nhiều cột của một tập tin có thể chỉ định số cột sử dụng một biến:

do for [i=2:10] { 
    plot 'datafile' using ($1):i with lines 
} 

Tuy nhiên, nếu chúng ta cố gắng sử dụng cú pháp $ nó không hoạt động:

do for [i=2:10] { 
    plot 'datafile' using ($1):($i) # ERROR! 
} 

các giải pháp là sử dụng column function, mà còn để lại khoảng trống cho các giá trị bị mất tích:

do for [i=2:10] { 
    plot 'datafile' using ($1):(column(i)) with lines 
} 
Các vấn đề liên quan