2012-01-19 32 views
7

Chúng ta có thể thay đổi các thuộc tính sau của các điểm trong một âm mưu jquery flot:jquery flot, kích thước và màu sắc khác nhau cho mỗi điểm

kích thước của chấm: Tôi về cơ bản cố gắng để vẽ một chiều đồ thị ba. Hai thứ nguyên đầu tiên là các giá trị x và y và giá trị thứ nguyên thứ ba sẽ được phản ánh theo kích thước của các điểm. Lớn hơn giá trị, lớn hơn điểm.

màu của dấu chấm: Một lần nữa, tôi đang cố hiển thị thuộc tính khác với giá trị x và y. lớn hơn giá trị, tối hơn điểm.

[EDIT]: Tôi đang cố gắng kiểm soát các thuộc tính này cho từng điểm và không cho toàn bộ ô.

+1

Bạn đã đọc tài liệu (http://flot.googlecode.com/svn/trunk/API.txt) chưa? Cả hai tùy chọn này đều khả dụng (trong "Tùy chỉnh chuỗi dữ liệu", điền và bán kính) – Mark

+2

@Mark Umm, tôi đã đọc nó. Plz chính xác tôi nếu tôi nhận được nó sai, nhưng những lựa chọn shadowSize và màu sắc sẽ có hiệu lực trên tất cả các điểm trong cốt truyện. Tôi đang cố gắng thay đổi shadowSize và màu sắc cho từng điểm. Giống như một dấu chấm đại diện cho một quốc gia có dân số cao hơn sẽ có một dấu chấm lớn hơn, một cái gì đó trên những dòng đó. – roopunk

Trả lời

16

Tôi hiểu bạn ngay bây giờ. Cách duy nhất tôi có thể thấy làm điều này là bằng cách đi qua một hàm callback để lựa chọn biểu tượng điểm:

function someFunc(ctx, x, y, radius, shadow) 
{ 
    someFunc.calls++; 
    if (someFunc.calls % 2 == 0) 
    { 
    ctx.arc(x, y, radius * 4, 0, shadow ? Math.PI : Math.PI * 2, false); 
    } 
    else 
    { 
    ctx.arc(x, y, radius, 0, shadow ? Math.PI : Math.PI * 2, false); 
    } 
} 
someFunc.calls = 0; 

var options = { 
    series: { 
    lines: { show: true }, 
    points: { show: true, symbol: someFunc} 
    } 
}; 

somePlot = $.plot($("#placeholder"), [ d1 ], options); 

Ở phía trên tôi đang điều chỉnh kích thước bán kính cho tất cả các điểm khác:

enter image description here

EXAMPLE HERE

+0

Cảm ơn. Điều này sẽ thực hiện công việc. Tham số 'someFunc.calls' sẽ theo dõi chỉ số của điểm được vẽ và giống như chỉ mục của mảng' data [] 'được chuyển tới hàm lô. Giá trị dân số sẽ có mặt trong một mảng riêng biệt 'pop_arr []' với chỉ mục của nó được đồng bộ với mảng "dữ liệu". Bán kính sẽ thay đổi theo 'pop_arr [someFunc.calls]'. Hoàn hảo. – roopunk

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