Учебники

JFreeChart — интерфейс базы данных

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

Бизнес-данные

Предположим, у нас есть следующая таблица MySQL mobile_tbl (mobile_brand VARCHAR (100) NOT NULL, unit_sale INT NO NULL);

Считайте, что эта таблица имеет следующие записи —

Мобильные бренды Единица продаж
Айфон 5с 20
Samsung Grand 20
MotoG 40
Нокиа Люмия 10

Генерация диаграммы с использованием базы данных

Ниже приведен код для создания круговой диаграммы на основе информации, представленной в таблице mobile_tbl, доступной в test_db в базе данных MySQL. Исходя из ваших требований, вы можете использовать любую другую базу данных.

import java.io.*; 
import java.sql.*; 

import org.jfree.chart.ChartUtilities;
import org.jfree.chart.ChartFactory; 
import org.jfree.chart.JFreeChart; 
import org.jfree.data.general.DefaultPieDataset;

public class PieChart_DB {
   
   public static void main( String[ ] args )throws Exception {
      
      String mobilebrands[] = {
         "IPhone 5s",   
         "SamSung Grand",   
         "MotoG",            
         "Nokia Lumia" 
      };
      
      /* Create MySQL Database Connection */
      Class.forName( "com.mysql.jdbc.Driver" );
      Connection connect = DriverManager.getConnection( 
         "jdbc:mysql://localhost:3306/jf_testdb" ,     
         "root",     
         "root123");
      
      Statement statement = connect.createStatement( );
      ResultSet resultSet = statement.executeQuery("select * from mobile_data" );
      DefaultPieDataset dataset = new DefaultPieDataset( );
      
      while( resultSet.next( ) ) {
         dataset.setValue( 
         resultSet.getString( "mobile_brand" ) ,
         Double.parseDouble( resultSet.getString( "unit_sale" )));
      }
      
      JFreeChart chart = ChartFactory.createPieChart(
         "Mobile Sales",   // chart title           
         dataset,          // data           
         true,             // include legend          
         true,           
         false );

      int width = 560;    /* Width of the image */
      int height = 370;   /* Height of the image */ 
      File pieChart = new File( "Pie_Chart.jpeg" );
      ChartUtilities.saveChartAsJPEG( pieChart , chart , width , height );
   }
}

Давайте сохраним указанный выше Java-код в файле PieChart_DB.java , а затем скомпилируем и запустим его из команды, отображаемой как —

$javac PieChart_DB.java  
$java PieChart_DB

Если все в порядке, он скомпилируется и запустится для создания файла изображения JPEG с именем Pie_Chart.jpeg, имеющего следующую диаграмму.