Как рисовать графики в java?

Пользователь

от stanford_mosciski , в категории: Java , 2 года назад

Как рисовать графики в java?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от chloe.keebler , 2 года назад

@stanford_mosciski 

Для отображения графиков в Java существует несколько библиотек, самые популярные из которых - это JFreeChart и JavaFX.

JFreeChart

JFreeChart предоставляет множество возможностей для создания различных видов графиков, таких как линейные графики, гистограммы, круговые диаграммы и многое другое.


Пример кода для создания линейного графика с помощью JFreeChart:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartFrame;
import org.jfree.chart.JFreeChart;
import org.jfree.data.xy.DefaultXYDataset;

public class LineChartExample {
    public static void main(String[] args) {
        DefaultXYDataset dataset = new DefaultXYDataset();
        double[][] data = new double[][]{{1, 2, 3, 4, 5}, {10, 20, 30, 40, 50}};
        dataset.addSeries("Series 1", data);

        JFreeChart chart = ChartFactory.createXYLineChart(
                "Line Chart Example", // Title
                "X Axis", // X-Axis label
                "Y Axis", // Y-Axis label
                dataset // Dataset
        );

        ChartFrame frame = new ChartFrame("Line Chart Example", chart);
        frame.pack();
        frame.setVisible(true);
    }
}


JavaFX

JavaFX также предоставляет возможности для создания графиков, но в отличие от JFreeChart, он позволяет создавать более интерактивные графики с использованием анимации и многих других возможностей.


Пример кода для создания линейного графика с помощью JavaFX:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
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.stage.Stage;

public class LineChartExample extends Application {

    @Override
    public void start(Stage stage) {
        final NumberAxis xAxis = new NumberAxis();
        final NumberAxis yAxis = new NumberAxis();
        final LineChart<Number,Number> lineChart = new LineChart<>(xAxis,yAxis);

        lineChart.setTitle("Line Chart Example");
        xAxis.setLabel("X Axis");
        yAxis.setLabel("Y Axis");

        XYChart.Series series = new XYChart.Series();
        series.setName("Series 1");
        series.getData().add(new XYChart.Data(1, 10));
        series.getData().add(new XYChart.Data(2, 20));
        series.getData().add(new XYChart.Data(3, 30));
        series.getData().add(new XYChart.Data(4, 40));
        series.getData().add(new XYChart.Data(5, 50));

        lineChart.getData().add(series);

        Scene scene = new Scene(lineChart, 800, 600);
        stage.setScene(scene);
        stage.show();
    }

    public static void main(String[] args) {
        launch(args);
    }
}


Обе библиотеки имеют множество возможностей и настроек для создания красивых и информативных графиков в Java.

Пользователь

от willa_will , 10 месяцев назад

@stanford_mosciski 

Для работы с графиками в Java есть несколько популярных библиотек, таких как JFreeChart и JavaFX. Давайте рассмотрим пример создания графика с помощью JFreeChart:

  1. Добавьте зависимость в ваш проект для JFreeChart. Например, если вы используете Maven, добавьте следующую зависимость в файл pom.xml:
1
2
3
4
5
<dependency>
    <groupId>org.jfree</groupId>
    <artifactId>jfreechart</artifactId>
    <version>1.5.3</version>
</dependency>


  1. Вот пример кода для создания простого графика:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartFrame;
import org.jfree.chart.JFreeChart;
import org.jfree.data.category.DefaultCategoryDataset;

public class BarChartExample {
    public static void main(String[] args) {
        DefaultCategoryDataset dataset = new DefaultCategoryDataset();
        dataset.addValue(10, "Series 1", "Category 1");
        dataset.addValue(20, "Series 1", "Category 2");
        dataset.addValue(30, "Series 1", "Category 3");

        JFreeChart chart = ChartFactory.createBarChart(
                "Bar Chart Example", // Chart title
                "Category", // Domain axis label
                "Value", // Range axis label
                dataset
        );

        ChartFrame frame = new ChartFrame("Bar Chart Example", chart);
        frame.pack();
        frame.setVisible(true);
    }
}


Этот код создает простой столбчатый график с тремя категориями и одним набором данных.


Вы также можете настраивать различные аспекты графика, такие как цвета, шрифты и многое другое, используя методы JFreeChart.


Надеюсь, это поможет вам начать работу с графиками в Java с использованием JFreeChart!