我正在编写一个测试程序,你需要超过70%才能通过测试。 我设置了一个LineChart和一个系列,它将百分比值和日期作为坐标。我想为> = 70%绿色而其余为红色的节点着色。这是一段代码片段:
for(final XYChart.Data<String, Number> data : series.getData()){
System.out.println(data.getXValue());
if(percent>=70){
data.getNode().setStyle("-fx-background-color: green;");
}else{
data.getNode().setStyle("-fx-background-color: red;");
}
data.getNode().addEventHandler(MouseEvent.MOUSE_MOVED, new EventHandler<MouseEvent>() {
@Override
public void handle(MouseEvent event) {
// TODO Auto-generated method stub
data.getNode().setCursor(Cursor.HAND);
Tooltip.install(data.getNode(), new Tooltip("Am: \n"+data.getXValue()+"\nZu: "+data.getYValue()+"%"));
}
});
}
问题是我无法为一个系列中的特定节点着色。 我希望有人能够帮助我。
答案 0 :(得分:1)
你必须从这样的事情开始。
public static String convertTimeto24hours(String time) {
String timein24hours = "";
try {
SimpleDateFormat displayFormat = new SimpleDateFormat("HH:mm");
SimpleDateFormat parseFormat = new SimpleDateFormat("hh:mm a");
Date date = null;
try{
date = parseFormat.parse(time);
System.out.println(parseFormat.format(date) + " = " + displayFormat.format(date));
}catch (ParseException e){
e.printStackTrace();
}
timein24hours = "" + displayFormat.format(date);
return timein24hours;
} catch (Exception e) {
print(e);
Log.error("convertTimeto24hours",e);
}
return timein24hours;
}