2010-08-24 23 views
16

Tôi đang cố gắng sử dụng Flot để vẽ biểu đồ có ngày tháng. Tôi đã làm theo những lời khuyên về chuỗi này: here nhưng nó dường như không làm việc cho tôi. Đây là JavaScript được sửa đổi của tôi (từ câu hỏi khác):Sử dụng các ngày trong màn hình jQuery Flot

$(document).ready(function() { 

    var d1 = [[1262818800,100],[1262732400,100],[1262646000,100]]; 

    var d2 = [[1262818800,23],[1262732400,23],[1262646000,23]]; 

    $.plot($("#placeholder"), [{data:d1,lines:{show: true},label:"Mountain"},{data:d2,lines:{show: true},label:"Valley"}],{yaxis: {label:"cm"}}, 
    {xaxis: 
     {mode:"time", 
     timeformat: "%M:%S" 
} 
    }); 

}); 

Tôi nhận được biểu đồ nhưng không chuyển đổi trục x thành ngày và giá trị trên trục x thậm chí không thẳng hàng với những gì tôi có trong các biến dữ liệu. Tôi thậm chí đã cố gắng nhân mỗi datapoint bởi 1000 để chuyển đổi sang timestamps Javascript, nhưng điều đó không giúp được gì cả. Tôi cũng đã thử các biến thời gian sau đây, trong trường hợp đó là vấn đề:

"%M:%S", "%H:%S", "%y,%m,%d" 

Nhưng không may mắn. Bất kỳ ý tưởng?

+1

Dưới đây là một exapmle nơi ngày đang làm việc: http://people.iola.dk/olau/flot/examples /time.html có thể bắt đầu với mã này và cố gắng sửa đổi nó cho nhu cầu của bạn – JochenJung

+0

Cảm ơn bạn đã chỉ ra điều đó. Nó rất hữu ích để làm việc lạc hậu từ đó. – tchaymore

Trả lời

26

Bạn nên nhân đến 1000 và sử dụng:

xaxis: { 
     mode: "time" 
    } 

Tôi đã thử nghiệm theo cách này. Tôi có thể đăng toàn bộ mã nếu bạn cần.

Đây là một ít bài tiếng ý về việc sử dụng flot để đo chiều cao và cân nặng của con tôi:

mã dự án là có thể tải về từ here.

Giải nén và mở tệp peso_giulia.html. Ở đây bạn có thể tìm thấy loạt d3.

Bạn có thể thay thế dòng

,[(new Date("2009/12/29")).getTime(),67] 

với phiên bản timestamp

,[(1282688250 * 1000), 100] 
+0

Cảm ơn rất nhiều. Tôi đã phải làm một điều nữa - có quá nhiều '{' và '}' trong vì vậy tôi không nghĩ rằng các tùy chọn cho trục x thậm chí còn được xử lý đúng cách. Nhưng tôi vẫn đánh giá cao việc xem mã của bạn. – tchaymore

+0

* 1000 thực hiện thủ thuật. Cảm ơn. – Florin

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