澳门新葡萄京官网首页 20

澳门新葡萄京官网首页美丽的Java图表类库,美丽Java图表类库

本文由码农网 –
小峰原创,转载请看清文末的转载要求,欢迎参与我们的付费投稿计划!

本文由码农网 –
小峰原创,转载请看清文末的转载要求,欢迎参与我们的付费投稿计划!

美丽的Java图表类库,美丽Java图表类库

JChartLib是一款基于Java的智能图表类库,JChartLib不仅有着漂亮的外观,而且支持图表坐标数值的自动调整,这样我们在图表中显示数值就比较简单,不用我们计算处理。JChartLib同样支持线型图、柱状图和饼状图,而且可以自定义外观样式。另外图表可直接在
Swing 中使用,可保持为 jpg 和 png 格式图片。

前段时间我们为大家分享过一些最常用的Java图表应用和Android图表应用,无论是在PC平台上还是移动平台上,图表和报表功能都是不可或缺的。本文推荐了8款最精彩实用的Java图表应用,大部分图表应用的功能都类似,主要在于界面的美观性和使用的灵活性上有一点高低。

摘要

       在使用java做后台站点的开发张,图表和报表功能都是不可或缺
的。本文推荐了8款最精彩实用的Java图表应用,大部分图表应用的功能都类似,主要在于界面的美观性和使用的灵活性上有一点高低。

JChartLib的预览图

澳门新葡萄京官网首页 1 澳门新葡萄京官网首页 2 澳门新葡萄京官网首页 3 澳门新葡萄京官网首页 4 澳门新葡萄京官网首页 5 澳门新葡萄京官网首页 6

1、JFreeChart – 多功能Java图表类库

JFreeChart是一款基于Java的多功能图表类库,并且是完全开源免费的。JFreeChart可以绘制饼状图、柱状图、散点图、时序图、甘特图等等多种图表,生成的图表还能以PNG和JPEG格式的图片输出,功能十分强大,更重要的一点是JFreeChart生成的图表操作起来非常流畅,因此性能也挺不错。

澳门新葡萄京官网首页 7

官方网站:

正文

JChartLib的使用方法

JChartLib线形图绘制的Java代码如下:

/*
* JChartLib Demo App for a Linechart
* @author Silvio Schneider
/
import com.bitagentur.chart.JChartLibLinechart;
import com.bitagentur.data.JChartLibDataSet;
import com.bitagentur.data.JChartLibSerie;
import com.bitagentur.renderer.JChartLibPanel;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
import javax.swing.JFrame;
/*
* A simple demonstration application showing how to create a line chart
/
public class JChartLibApp extends JFrame implements WindowListener {
/**
 * Creates a new Application Frame
 */
public JChartLibApp() {
    super("JChartLib Demo Appllication");
    final JChartLibDataSet dataset = createDataset();
    final JChartLibBaseChart chart = createChart(dataset);
    final JChartLibPanel chartPanel = new JChartLibPanel(chart);
    chartPanel.setPreferredSize(new java.awt.Dimension(500, 270));
    setContentPane(chartPanel);
}

/**
 * Creates a sample dataset.
 * 
 * @return a sample dataset.
 */
private JChartLibDataSet createDataset() {
    //Dataseries can be added with int arrays
    int[] values1 = new int[5];
    values1[0] = 1;
    values1[1] = 3;
    values1[2] = 4;
    values1[3] = 7;
    values1[4] = 2;

    //or by generating a Dataserie object
    JChartLibSerie values2 = new JChartLibSerie("Banana");
    values2.addValue(5);
    values2.addValue(4);
    values2.addValue(2);
    values2.addValue(6);
    values2.addValue(2);

    final JChartLibDataSet dataset = new JChartLibDataSet();
    dataset.addDataSerie("Apple", values1);   //adds the apples
    dataset.addDataSerie(values2);            //adds the bananas

    return dataset;
}

/**
 * Creates a chart
 * 
 * @param dataset the data for the chart.
 * @return a new chart
 */
private JChartLibBaseChart createChart(final JChartLibDataSet dataset) {

    // create the chart with title and axis names
    final JChartLibLinechart chart = new JChartLibLinechart(
            "Fruits are good", // chart title
            "Time goes by", // x axis text
            "Number of Fruits", // y axis text
            dataset, // data
            true // legend on
            );

    return chart;
}

/**
 * Main method - DEMO Application for JChartLib
 *
 * @param args the command line arguments
 */
public static void main(final String[] args) {
    System.out.println("JChartLibApp started");
    final JChartLibApp app = new JChartLibApp();
    app.addWindowListener(app);
    app.pack();
    app.setVisible(true);
}

@Override
public void windowOpened(WindowEvent e) {
    //Nothing to do
}

@Override
public void windowClosing(WindowEvent e) {
    //Exit and goodby
    if (e.getWindow() == this) {
        dispose();
        System.out.println("Thanks for using the JChartLibApp");
        System.exit(0);
    }
}

@Override
public void windowClosed(WindowEvent e) {
    //Nothing to do

}

@Override
public void windowIconified(WindowEvent e) {
    //Nothing to do
}

@Override
public void windowDeiconified(WindowEvent e) {
    //Nothing to do
}

@Override
public void windowActivated(WindowEvent e) {
    //Nothing to do
}

@Override
public void windowDeactivated(WindowEvent e) {
    //Nothing to do
}
}

JChartLib柱形图绘制的Java代码如下:

/*
* JChartLib Demo App for a Barchart
* @author Silvio Schneider
/
import com.bitagentur.chart.JChartLibBarchart;
import com.bitagentur.data.JChartLibDataSet;
import com.bitagentur.data.JChartLibSerie;
import com.bitagentur.renderer.JChartLibPanel;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
import javax.swing.JFrame;
/*
* A simple demonstration application showing how to create a bar chart
/
public class JChartLibApp extends JFrame implements WindowListener {
/**
 * Creates a new Application Frame
 */
public JChartLibApp() {
    super("JChartLib Demo Appllication");
    final JChartLibDataSet dataset = createDataset();
    final JChartLibBarchart chart = createChart(dataset);
    final JChartLibPanel chartPanel = new JChartLibPanel(chart);
    chartPanel.setPreferredSize(new java.awt.Dimension(500, 270));
    setContentPane(chartPanel);
}

/**
 * Creates a sample dataset.
 * 
 * @return a sample dataset.
 */
private JChartLibDataSet createDataset() {
    //Dataseries can be added with int arrays
    int[] values1 = new int[5];
    values1[0] = 1;
    values1[1] = 3;
    values1[2] = 4;
    values1[3] = 7;
    values1[4] = 2;

    //or by generating a Dataserie object
    JChartLibSerie values2 = new JChartLibSerie("Banana");
    values2.addValue(5);
    values2.addValue(4);
    values2.addValue(2);
    values2.addValue(6);
    values2.addValue(2);

    final JChartLibDataSet dataset = new JChartLibDataSet();
    dataset.addDataSerie("Apple", values1);   //adds the Apples
    dataset.addDataSerie(values2);            //adds the Bananas

    return dataset;
}

/**
 * Creates a chart
 * 
 * @param dataset the data for the chart.
 * @return a new chart
 */
private JChartLibBaseChart createChart(final JChartLibDataSet dataset) {

    // create the chart with title and axis names
    final JChartLibBarchart chart = new JChartLibBarchart(
            "Fruits are good", // chart title
            "Time goes by", // x axis text
            "Number of Fruits", // y axis text
            dataset, // data
            true // legend on
            );

    return chart;
}

/**
 * Main method - DEMO Application for JChartLib
 *
 * @param args the command line arguments
 */
public static void main(final String[] args) {
    System.out.println("JChartLibApp started");
    final JChartLibApp app = new JChartLibApp();
    app.addWindowListener(app);
    app.pack();
    app.setVisible(true);
}

@Override
public void windowOpened(WindowEvent e) {
    //Nothing to do
}

@Override
public void windowClosing(WindowEvent e) {
    //Exit and goodby
    if (e.getWindow() == this) {
        dispose();
        System.out.println("Thanks for using the JChartLibApp");
        System.exit(0);
    }
}

@Override
public void windowClosed(WindowEvent e) {
    //Nothing to do

}

@Override
public void windowIconified(WindowEvent e) {
    //Nothing to do
}

@Override
public void windowDeiconified(WindowEvent e) {
    //Nothing to do
}

@Override
public void windowActivated(WindowEvent e) {
    //Nothing to do
}

@Override
public void windowDeactivated(WindowEvent e) {
    //Nothing to do
}
}

JChartLib饼状图绘制的Java代码如下:

/*
* JChartLib Demo App for a piechart
* @author Silvio Schneider
/
import com.bitagentur.chart.JChartLibPiechart;
import com.bitagentur.data.JChartLibDataSet;
import com.bitagentur.data.JChartLibSerie;
import com.bitagentur.renderer.JChartLibPanel;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
import java.util.Random;
import javax.swing.JFrame;
/
* A simple demonstration application showing how to create a pie chart.

/
public class JChartLibApp_piechart extends JFrame implements WindowListener {
/**
 * Creates a new Application Frame
 */
public JChartLibApp_piechart() {
    super("JChartLib Demo Appllication");

    final JChartLibDataSet dataset = createDataset();
    final JChartLibPiechart chart = createChart(dataset);
    final JChartLibPanel chartPanel = new JChartLibPanel(chart);
    chartPanel.setPreferredSize(new java.awt.Dimension(500, 270));
    setContentPane(chartPanel);
}

/**
 * Creates a sample dataset.
 * 
 * @return a sample dataset.
 */
private JChartLibDataSet createDataset() {
    //or by generating a Dataserie object
    JChartLibSerie values1 = new JChartLibSerie("Fruits");
    values1.addValue("Apple", 1);
    values1.addValue("Banana", 1);
    values1.addValue("Orange", 1);
    values1.addValue("Tomato", 1);

    final JChartLibDataSet dataset = new JChartLibDataSet();
    dataset.addDataSerie(values1);          //adds the Apples

    return dataset;
}

/**
 * Creates a chart
 * 
 * @param dataset the data for the chart.
 * @return a new chart
 */
private JChartLibPiechart createChart(final JChartLibDataSet dataset) {

    // create the chart with title and axis names
    final JChartLibPiechart chart = new JChartLibPiechart(
            "yammi fruitpie", // chart title
            "", // x axis text
            "", // y axis text
            dataset // data
            );

    return chart;
}

/**
 * Main method - DEMO Application for JChartLib
 *
 * @param args the command line arguments
 */
public static void main(final String[] args) {
    System.out.println("JChartLibApp started");
    final JChartLibApp_piechart app = new JChartLibApp_piechart();
    app.addWindowListener(app);
    app.pack();
    app.setVisible(true);
}

@Override
public void windowOpened(WindowEvent e) {
    //Nothing to do
}

@Override
public void windowClosing(WindowEvent e) {
    //Exit and goodby
    if (e.getWindow() == this) {
        dispose();
        System.out.println("Thanks for using the JChartLibApp");
        System.exit(0);
    }
}

@Override
public void windowClosed(WindowEvent e) {
    //Nothing to do
}

@Override
public void windowIconified(WindowEvent e) {
    //Nothing to do
}

@Override
public void windowDeiconified(WindowEvent e) {
    //Nothing to do
}

@Override
public void windowActivated(WindowEvent e) {
    //Nothing to do
}

@Override
public void windowDeactivated(WindowEvent e) {
    //Nothing to do
}
}

JChartLib的功能介绍就到这里,如有疑问,可以访问文末的官方网站,或者留言讨论。

2、ECharts-Java – Java版ECharts图表库

ECharts是一款功能非常强大的JavaScript图表库,ECharts-Java是ECharts的Java版,用Java代码实现了ECharts的所有图表功能,ECharts中的Json结构也都转换成了Java对象,这样我们使用起来会非常方便,设置也相当灵活。

澳门新葡萄京官网首页 8

官方网站:

1、JFreeChart – 多功能Java图表类库

     
JFreeChart是一款基于Java的多功能图表类库,并且是完全开源免费的。JFreeChart可以绘制饼状图、柱状图、散点图、时序图、
甘特图等等多种图表,生成的图表还能以PNG和JPEG格式的图片输出,功能十分强大,更重要的一点是JFreeChart生成的图表操作起来非常流畅,
因此性能也挺不错。

澳门新葡萄京官网首页 9

官方网站:

3、Android图表绘制引擎 – AChartEngine

AChartEngine是一款基于Android的图表绘制引擎,它为Android开发者提供了很多实用的图表绘制工具类,如果你需要在Android应用中添加可视化统计的功能,那么AChartEngine是一个不错的选择。

澳门新葡萄京官网首页 10

官方网站:

2、ECharts-Java – Java版ECharts图表库

ECharts是一款功能非常强大的JavaScript图表库,ECharts-Java是ECharts的Java版,用Java代码实现了ECharts的所有图表功能,ECharts中的Json结构也都转换成了Java对象,这样我们使用起来会非常方便,设置也相当灵活。

澳门新葡萄京官网首页 11

官方网站:

4、Java快速报表组件- DynamicReports

DynamicReports是一款相当敏捷的Java报表组件,并且是完全免费开源的。和之前介绍的JFreeChart不同,DynamicReports是报表和可视化图表相结合的,可以更加直观地展现和统计数据。DynamicReports是对JasperReports的扩展,完全可以不用专门的设计器来设计。

澳门新葡萄京官网首页 12

官方网站:

3、Android图表绘制引擎 – AChartEngine

AChartEngine是一款基于Android的图表绘制引擎,它为Android开发者提供了很多实用的图表绘制工具类,如果你需要在Android应用中添加可视化统计的功能,那么AChartEngine是一个不错的选择。

澳门新葡萄京官网首页 13

官方网站:

5、Android开源图表库 – MPAndroidChart

MPAndroidChart是一款基于Android的开源图表库,MPAndroidChart不仅可以在Android设备上绘制各种统计图表,而且可以对图表进行拖动和缩放操作,应用起来非常灵活。和前面介绍的AChartEngine相比,MPAndroidChart显得更为轻巧和简单,MPAndroidChart同样拥有常用的图表类型:线型图、饼图、柱状图和散点图。

澳门新葡萄京官网首页 14

官方网站:

4、Java快速报表组件- DynamicReports

DynamicReports是一款相当敏捷的Java报表组件,并且是完全免费开源的。和之前介绍的JFreeChart不同,DynamicReports是报表和可视化图表相结合的,可以更加直观地展现和统计数据。DynamicReports是对JasperReports的扩展,完全可以不用专门的设计器来设计。

澳门新葡萄京官网首页 15

官方网站:

6、Java图表类库 – jCharts

jCharts是一款基于Java的图表绘制类库,jCharts包含了多种图表格式,包括线型图、饼图、柱形图和点图等。

澳门新葡萄京官网首页 16

官方网站:

5、Android开源图表库 – MPAndroidChart

MPAndroidChart是一款基于Android的开源图表库,MPAndroidChart不仅可以在Android设备上绘制各种统计图
表,而且可以对图表进行拖动和缩放操作,应用起来非常灵活。和前面介绍的AChartEngine相比,MPAndroidChart显得更为轻巧和简
单,MPAndroidChart同样拥有常用的图表类型:线型图、饼图、柱状图和散点图。

澳门新葡萄京官网首页 17

官方网站:

7、Java智能图表类库 – JChartLib

JChartLib是一款基于Java的智能图表类库,JChartLib不仅有着漂亮的外观,而且支持图表坐标数值的自动调整,这样我们在图表中显示数值就比较简单,不用我们计算处理。JChartLib同样支持线型图、柱状图和饼状图,而且可以自定义外观样式。另外图表可直接在
Swing 中使用,可保持为 jpg 和 png 格式图片。

澳门新葡萄京官网首页 5

在线演示:

6、Java图表类库 – jCharts

jCharts是一款基于Java的图表绘制类库,jCharts包含了多种图表格式,包括线型图、饼图、柱形图和点图等。

澳门新葡萄京官网首页 19

官方网站:

8、基于SWT的Java图表类库 – SWTChart

SWTChart是一款基于SWT的Java图表类库,也正因为是基于SWT的缘故,SWTChart应用起来非常方便,而且也相当轻巧。

SWTChart支持多种图表类型,包括:线图 、散点图 、堆栈图 、对数标度
、分类轴 、多轴 、柱形图 、面积图 、步骤图 、轴取向 、系列标签等。

澳门新葡萄京官网首页 20

官方网站:

7、Java智能图表类库 – JChartLib

JChartLib是一款基于Java的智能图表类库,JChartLib不仅有着漂亮的外观,而且支持图表坐标数值的自动调整,这样我们在图表中
显示数值就比较简单,不用我们计算处理。JChartLib同样支持线型图、柱状图和饼状图,而且可以自定义外观样式。另外图表可直接在
Swing 中使用,可保持为 jpg 和 png 格式图片。

澳门新葡萄京官网首页 21

在线演示:

8、基于SWT的Java图表类库 – SWTChart

SWTChart是一款基于SWT的Java图表类库,也正因为是基于SWT的缘故,SWTChart应用起来非常方便,而且也相当轻巧。

SWTChart支持多种图表类型,包括:线图 、散点图 、堆栈图 、对数标度
、分类轴 、多轴 、柱形图 、面积图 、步骤图 、轴取向 、系列标签等。

澳门新葡萄京官网首页 22

官方网站:


结语

如果你还需要了解更多技术文章信息,请继续关注白衣秀才的博客
个人网站:http://penglei.top/
Github:https://github.com/whitescholars
微博:http://weibo.com/u/3034107691?refer_flag=1001030102_&is_all=1

 

摘要
在使用java做后台站点的开发张,图表和报表功能都是不可或缺
的。本文推荐了8款最精彩实用的…

发表评论

电子邮件地址不会被公开。 必填项已用*标注