我一直在努力提高JavaFX中LineChart的性能,但没有取得很大的成功.我也发现这似乎是一些程序员在尝试显示大数据时发现的常见问题(这里的大数据代表数据大于10,000).例如,这种数据在科学和工程中非常普遍,如果我们能够弄清楚如何在JavaFX中加速LineChart,那将会很棒.
好吧,我在stackoverflow中发现了两个帖子,类似的问题JavaFX LineChart的性能问题有65000个数据点和JavaFX LineChart - 绘制数组.主题性能问题的JavaFX线型图有65000个数据点结束了(亚当)建议使用道格拉斯-普克算法!减少进入LineChart的数据点数量以加快速度.
但是,在科学和工程数据中,我们通常需要查看绘图形状,然后放大以查看绘图特定部分的详细信息.因此,如果我们使用Ramer-Douglas-Peucker算法,我们将需要在每次用户放大/缩小时重绘LineChart,我认为这将花费大量处理.
因此,我想知道是否有人在如何加速JavaFX中的LineChart方面有一些提示.这是一个示例代码,包含我到目前为止学到的内容.
import java.util.ArrayList;
import java.util.List;
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.chart.LineChart;
import javafx.scene.chart.NumberAxis;
import javafx.scene.chart.XYChart;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
public class TestingLineChart extends Application {
@Override
public void start(Stage primaryStage) {
long startTime, endTime;
startTime = System.nanoTime();
StackPane root = new StackPane();
NumberAxis xAxis = new NumberAxis();
NumberAxis yAxis = new NumberAxis();
LineChart<Number, Number> lineChartPlot = new LineChart<>(xAxis, yAxis);
// set them false to make …Run Code Online (Sandbox Code Playgroud) mariaDB 未在我的 Windows 10 中启动。
我在日志中收到以下信息:
Cannot find checkpoint record at LSN (1,0x5c8f)
2019-12-19 9:18:13 0 [ERROR] mysqld.exe: Aria recovery failed. Please run aria_chk -r on all Aria tables and delete all aria_log.######## files
2019-12-19 9:18:13 0 [ERROR] Plugin 'Aria' init function returned error.
2019-12-19 9:18:13 0 [ERROR] Plugin 'Aria' registration as a STORAGE ENGINE failed.
InnoDB: using atomic writes.
2019-12-19 9:18:13 0 [Note] InnoDB: Mutexes and rw_locks use Windows interlocked functions
2019-12-19 9:18:13 0 [Note] InnoDB: Uses event mutexes …Run Code Online (Sandbox Code Playgroud)