这是我的代码:
public class SceneToImageAndWrite extends Application {
public static void main(String[] args) {
launch(args);
}
@Override
public void start(Stage stage) throws Exception {
stage.setTitle("Primary Stage");
final CategoryAxis xAxis = new CategoryAxis();
xAxis.setLabel("Animals");
final NumberAxis yAxis = new NumberAxis();
yAxis.setLabel("Number");
final LineChart<String, Number> lineChart = new LineChart<String, Number>(xAxis, yAxis);
lineChart.setTitle("Line Chart");
XYChart.Series<String, Number> series1 = new Series<String, Number>();
series1.setName("Series");
/** xAxis & yAxis Data */
LinkedHashMap<String, Number> map = new LinkedHashMap<>();
map.put("dog", 12);
map.put("cat", 3);
map.put("bear", 8);
map.put("tiger", 20);
for (Entry<String, Number> entry : map.entrySet()) {
series1.getData().add(new XYChart.Data<String, Number>(entry.getKey(), entry.getValue()));
}
lineChart.getData().add(series1);
Scene scene = new Scene(lineChart);
stage.setScene(scene);
stage.show();
WritableImage snapShot = scene.snapshot(null);
ImageIO.write(SwingFXUtils.fromFXImage(snapShot, null), "png", new File("test.png"));
}
}
框架很棒,但保存的图像没有它应该拥有的所有图表数据。我想完全保存 Chart-Image,怎么了?⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀