如何在JavaFX char中更改X和Y轴线的颜色?
javafx.scene.chart包提供的类即创建各种图表&minusl折线图,面积图,条形图,饼图,气泡图,散点图等
除饼图外,所有其他图表都绘制在XY平面上。您可以通过实例化相应的类来创建所需的XY图表。
更改轴线的颜色-
JavaFXCSS的fx-border-color类用于设置节点边框的颜色。
JavaFXCSS的-fx-border-width类用于设置节点边框的宽度。
Node(所有节点的基础类)类的setStyle()方法接受CSS字符串,并将指定的样式设置为当前图表。
要更改x和y轴的颜色(更改为OrangeRed),请使用以下setStyle()方法将以下CSS设置为图表对象-
fx-border-color: OrangeRed transparent transparent; -fx-border-width:3 -fx-border-color: transparent OrangeRed transparent transparent; -fx-borderwidth:3
示例
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.stage.Stage;
import javafx.scene.chart.LineChart;
import javafx.scene.chart.NumberAxis;
import javafx.scene.chart.XYChart;
import javafx.scene.layout.StackPane;
public class ChangingAxisColor extends Application {
public void start(Stage stage) {
//定义x轴
NumberAxis xAxis = new NumberAxis(1960, 2020, 10);
xAxis.setLabel("Years");
//定义y轴
NumberAxis yAxis = new NumberAxis (0, 350, 50);
yAxis.setLabel("No.of schools");
//创建折线图
LineChart<Number,Number> linechart = new
LineChart<Number,Number>(xAxis, yAxis);
XYChart.Series<Number,Number> series = new XYChart.Series<Number,Number>();
series.setName("No of schools in an year");
series.getData().add(new XYChart.Data<Number,Number>(1970, 15));
series.getData().add(new XYChart.Data<Number,Number>(1980, 30));
series.getData().add(new XYChart.Data<Number,Number>(1990, 60));
series.getData().add(new XYChart.Data<Number,Number>(2000, 120));
series.getData().add(new XYChart.Data<Number,Number>(2013, 240));
series.getData().add(new XYChart.Data<Number,Number>(2014, 300));
//将数据设置为折线图
linechart.getData().add(series);
//更改x和y轴的颜色
linechart.getXAxis().setStyle("-fx-border-color: OrangeRed transparent
transparent; -fx-border-width:3");
linechart.getYAxis().setStyle("-fx-border-color: transparent OrangeRed
transparent transparent; -fx-border-width:3");
//创建一个组对象
StackPane root = new StackPane(linechart);
//设置场景对象
Scene scene = new Scene(root, 595, 300);
stage.setTitle("Line Chart");
stage.setScene(scene);
stage.show();
}
public static void main(String args[]){
launch(args);
}
}输出结果