Javafx 2 设置条形图的笔划

Javafx 2 设置条形图的笔划,javafx-2,bar-chart,Javafx 2,Bar Chart,如何设置条形图的笔划(颜色)?我总是有黄色的条子 这是我的密码 import java.util.Set; import javafx.application.Application; import javafx.scene.Node; import javafx.scene.Scene; import javafx.scene.chart.BarChart; import javafx.scene.chart.CategoryAxis; import javafx.scene.chart.Nu

如何设置条形图的笔划(颜色)?我总是有黄色的条子

这是我的密码

import java.util.Set;
import javafx.application.Application;
import javafx.scene.Node;
import javafx.scene.Scene;
import javafx.scene.chart.BarChart;
import javafx.scene.chart.CategoryAxis;
import javafx.scene.chart.NumberAxis;
import javafx.scene.chart.XYChart;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;

public class StackPaneTest extends Application {

@Override
public void start(Stage primaryStage) {

    final CategoryAxis xAxis1 = new CategoryAxis();
    final NumberAxis yAxis1 = new NumberAxis();

    final BarChart<String, Number> barChart = new BarChart<String, Number>(xAxis1, yAxis1);

    barChart.setAlternativeRowFillVisible(false);
    barChart.setLegendVisible(false);
    barChart.setAnimated(false);

    XYChart.Series serie1 = new XYChart.Series();

    serie1.getData().add(new XYChart.Data("Jan", 1));
    serie1.getData().add(new XYChart.Data("Feb", 2));
    serie1.getData().add(new XYChart.Data("Mar", 1.5));
    serie1.getData().add(new XYChart.Data("Apr", 3));
    serie1.getData().add(new XYChart.Data("May", 2.5));
    serie1.getData().add(new XYChart.Data("Jun", 5));
    serie1.getData().add(new XYChart.Data("Jul", 4));
    serie1.getData().add(new XYChart.Data("Aug", 8));
    serie1.getData().add(new XYChart.Data("Sep", 6.5));
    serie1.getData().add(new XYChart.Data("Oct", 13));
    serie1.getData().add(new XYChart.Data("Nov", 10));
    serie1.getData().add(new XYChart.Data("Dec", 20));

    barChart.getData().addAll(serie1);

    Set<Node> barNode = barChart.lookupAll(".default-color0.chart-bar");
    for(final Node bar : barNode){
        bar.setStyle("-fx-stroke: GREEN");
    }

    StackPane stack = new StackPane();
    stack.getChildren().addAll(barChart);    

    Scene scene = new Scene(stack, 800, 600);

    primaryStage.setScene(scene);
    primaryStage.show();
}

public static void main(String[] args) {
    launch(args);
}
import java.util.Set;
导入javafx.application.application;
导入javafx.scene.Node;
导入javafx.scene.scene;
导入javafx.scene.chart.BarChart;
导入javafx.scene.chart.CategoryAxis;
导入javafx.scene.chart.NumberAxis;
导入javafx.scene.chart.XYChart;
导入javafx.scene.layout.StackPane;
导入javafx.stage.stage;
公共类StackPaneTest扩展了应用程序{
@凌驾
公共无效开始(阶段primaryStage){
final CategoryAxis Xaxi1=新CategoryAxis();
最终编号axis yAxis1=新编号axis();
最终条形图=新条形图(xAxis1,yAxis1);
条形图.setAlternativeRowFillVisible(false);
条形图。setLegendVisible(假);
条形图设置动画(假);
XYChart.Series系列1=新的XYChart.Series();
serie1.getData().add(新的XYChart.Data(“Jan”,1));
serie1.getData().add(新的XYChart.Data(“Feb”,2));
serie1.getData().add(新的XYChart.Data(“Mar”,1.5));
serie1.getData().add(新的XYChart.Data(“Apr”,3));
serie1.getData().add(新的XYChart.Data(“May”,2.5));
serie1.getData().add(新的XYChart.Data(“Jun”,5));
serie1.getData().add(新的XYChart.Data(“Jul”,4));
serie1.getData().add(新的XYChart.Data(“Aug”,8));
serie1.getData().add(新的XYChart.Data(“Sep”,6.5));
serie1.getData().add(新的XYChart.Data(“Oct”,13));
serie1.getData().add(新的XYChart.Data(“Nov”,10));
serie1.getData().add(新的XYChart.Data(“Dec”,20));
barChart.getData().addAll(serie1);
设置barNode=barChart.lookupAll(“.default-color0.chart-bar”);
用于(最终节点栏:barNode){
条形设置样式(“-fx笔划:绿色”);
}
StackPane stack=新的StackPane();
stack.getChildren().addAll(条形图);
场景=新场景(堆栈,800600);
初级阶段。场景(场景);
primaryStage.show();
}
公共静态void main(字符串[]args){
发射(args);
}

}

如果您希望条形图为绿色,请使用setStyle(“-fx条形图填充:绿色”)

关于笔划应用-这是一个单独的问题,但它不是关于风格应用到酒吧


在常见情况下,您可以使用caspian.css或modena.css文件来观察应用的样式示例。

如果您希望条形图为绿色,请使用setStyle(“-fx bar fill:green”);谢谢你,Alexander,它可以工作:如果你回复而不是这个评论,我可以标记为接受。此外,你可以设置边框:bar.setStyle(“-fx边框颜色:绿色;-fx边框宽度:5;”);