我正在尝试使用
AreaChart
来实现完全无风格的 JavaFX
。我只想要实际的图表线。到目前为止,我认为我已经接受了图表底部出现的这条烦人的白线。有谁知道如何删除这个吗?
int maxDataPoints = 200;
NumberAxis xAxis = new NumberAxis(0, maxDataPoints, 10);
xAxis.setForceZeroInRange(false);
xAxis.setAutoRanging(false);
xAxis.setTickLabelsVisible(false);
xAxis.setTickMarkVisible(false);
xAxis.setMinorTickVisible(false);
xAxis.setVisible(false);
NumberAxis yAxis = new NumberAxis(0, 1, 0.1);
yAxis.setTickLabelsVisible(false);
yAxis.setTickMarkVisible(false);
yAxis.setMinorTickVisible(false);
yAxis.setVisible(false);
AreaChart<Number, Number> areaChartAlt = new AreaChart<>(xAxis, yAxis);
areaChartAlt.minHeightProperty().bind(stackPane.heightProperty());
areaChartAlt.setCreateSymbols(false);
areaChartAlt.getXAxis().setVisible(false);
areaChartAlt.getYAxis().setVisible(false);
areaChartAlt.setLegendVisible(false);
stackPane.getChildren().add(areaChartAlt);
StackPane.setAlignment(areaChartAlt, Pos.CENTER);
XYChart.Series<Number, Number> series = new XYChart.Series<>();
for (int i = 0; i < maxDataPoints; i++)
{
series.getData().add(new XYChart.Data<>(i, 0));
}
ThreadUtils.run(() -> {
int counter = maxDataPoints;
while (true)
{
ThreadUtils.safeSleep(samplePeriodMs);
float value = (float) (counter % 100) * 0.01f;
int finalCounter = counter;
Platform.runLater(() -> {
var data = series.getData().remove(0);
series.getData().add(new XYChart.Data<>(finalCounter, value));
xAxis.setLowerBound(data.getXValue().intValue() + 1);
xAxis.setUpperBound(finalCounter + 1);
});
counter++;
}
});
areaChartAlt.getData().add(series);
stackPane.setPadding(Insets.EMPTY);
borderPane.setCenter(stackPane);
BorderPane.setAlignment(stackPane, Pos.CENTER);
.chart {
-fx-padding: 0px;
-fx-background-color: transparent;
-fx-legend-visible: false;
-fx-border-color: transparent;
-fx-grid-lines-visible: false;
-fx-horizontal-grid-lines-visible: false;
-fx-vertical-grid-lines-visible: false;
-fx-minor-tick-visible: false;
}
.chart-content {
-fx-padding: 0px;
-fx-background-color: transparent;
-fx-border-color: transparent;
-fx-border-width: 0px;
}
.chart-plot-background {
-fx-background-color: transparent;
}
.axis {
-fx-side: null;
}
将其添加到
.chart
文件中的 css
下似乎已删除该行。
将其添加到“css”文件中的“.chart”下似乎已删除该行。
-fx-horizontal-zero-line-visible: false;
-fx-vertival-zero-line-visible: false;