2010-06-21 34 views
5

Tôi đang vẽ một TimeTableXYDataset bằng cách sử dụng StackedXYBarRenderer. Thật không may, màu sắc của mỗi chuỗi thay đổi khi làm mới.Lập bản đồ Tên chuỗi JFreeChart thành chỉ mục chuỗi

Tôi biết cách đặt màu bằng cách sử dụng phương pháp setSeriesPaint của trình kết xuất đồ họa, nhưng phải mất một chỉ số chuỗi số nguyên làm đối số. Tôi tạo datapoints của tôi sử dụng một chuỗi như tên series:

ds.add(new SimpleTimePeriod(us.getDate(), 
          new Date(us.getDate().getTime() + 1000*60)), 
     us.getTotal(), us.getName())); 

Làm thế nào để phát hiện ra các ánh xạ giữa tên hàng loạt và chỉ số hàng loạt vì vậy tôi có thể gọi setSeriesPaint?

Trả lời

3

Cách tiếp cận dễ nhất là cập nhật Map phù hợp khi dữ liệu tích lũy. Ngoài ra, các phương pháp getSeriesKey()indexOf() có thể được sử dụng để chuyển đổi theo một trong hai hướng. Ví dụ:

for (int i = 0; i < ds.getSeriesCount(); i++) { 
    String name = (String) ds.getSeriesKey(i); 
    System.out.println(ds.indexOf(name) + ": " + name); 
} 
+0

Xin cảm ơn - điều đó đã xảy ra. –

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