{"id":15517073,"url":"https://github.com/deric/java-chart-benchmark","last_synced_at":"2026-01-07T08:02:34.206Z","repository":{"id":29386249,"uuid":"32921287","full_name":"deric/java-chart-benchmark","owner":"deric","description":"Benchmark of Java plotting libraries","archived":false,"fork":false,"pushed_at":"2015-10-12T14:38:16.000Z","size":432,"stargazers_count":5,"open_issues_count":0,"forks_count":0,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-02-02T23:14:12.352Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/deric.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-03-26T10:34:27.000Z","updated_at":"2024-05-31T15:01:47.000Z","dependencies_parsed_at":"2022-09-06T16:51:38.942Z","dependency_job_id":null,"html_url":"https://github.com/deric/java-chart-benchmark","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deric%2Fjava-chart-benchmark","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deric%2Fjava-chart-benchmark/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deric%2Fjava-chart-benchmark/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deric%2Fjava-chart-benchmark/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/deric","download_url":"https://codeload.github.com/deric/java-chart-benchmark/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246093104,"owners_count":20722395,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-02T10:11:13.459Z","updated_at":"2026-01-07T08:02:34.200Z","avatar_url":"https://github.com/deric.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Java Chart Benchmark\n\nThe purpose of this repository is to compare plotting libraries available for Java, especially in terms of speed and handling larger amounts of data. Tested libraries are following (feel free to suggest missing ones):\n\n  * [Gral](http://trac.erichseifert.de/gral/) - release 0.10\n  * [XChart](http://xeiam.com/xchart/) - release 2.4.3\n  * [JFreeChart](http://www.jfree.org/) - release 1.0.19\n\n## Results\n\n| Library  | scatter 1k   |  scatter 10k |\n|----------|:------------:|-------------:|\n| Gral     | 647ms/785ms  | 867ms/1028ms |\n| JFree    | 409ms/480ms  |  471ms/522ms |\n| XChart   |  50ms/253ms  |  103ms/313ms |\n| JMathPlot| 450ms/507ms  |  459ms/532ms |\n\nFirst time is measured after initilization of plotting class, second one after displaying whole `JFrame`. This times could be very different on different platforms (and versions of Java). Time measurement is not exact and might slightly differ each run, the goal is just to get a rough approximation of rendering speed.\n\n## Charts\n\n### Gral\n[Source code](https://github.com/deric/java-chart-benchmark/blob/master/src/main/java/scatterplot1k/GralScatter.java)\nFeatures:\n  * allows zooming\n\n![Grall scatterplot](https://raw.githubusercontent.com/deric/java-chart-benchmark/master/images/gral-scatter-1k.png)\n\n### JFree\n\n[Source code](https://github.com/deric/java-chart-benchmark/blob/master/src/main/java/scatterplot1k/JFreeScatter2.java)\n![JFree scatterplot](https://raw.githubusercontent.com/deric/java-chart-benchmark/master/images/jfree-scatter-1k.png)\n\n\n### XChart\n\n[Source code](https://github.com/deric/java-chart-benchmark/blob/master/src/main/java/scatterplot1k/XChartScatter.java)\n![XChart scatterplot](https://raw.githubusercontent.com/deric/java-chart-benchmark/master/images/xchart-scatter-1k.png)\n\n\n### JMathPlot\n\n[Source code](https://github.com/deric/java-chart-benchmark/blob/master/src/main/java/scatterplot1k/JMathScatter.java)\n\nThe library is not at Maven, I used a [fork on github](https://github.com/deric/clueminer/tree/master/modules/math-plot) for testing.\n\n![XChart scatterplot](https://raw.githubusercontent.com/deric/java-chart-benchmark/master/images/jmath-scatter-1k.png)\n\n\n## System\n\nMeasured on Linux\n\n * Oracle Java 8 (1.8.0_40)\n * Intel i5 CPU 661 @ 3.33GHz (4 cores)\n * Linux (kernel 3.2.0-77)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fderic%2Fjava-chart-benchmark","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fderic%2Fjava-chart-benchmark","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fderic%2Fjava-chart-benchmark/lists"}