如果读取得到的二维数组,存储的是每个像素的颜色值,那么很简单,可以使用数组转换到图片(网上有很多的代码),然后绘制到JFrame等窗体上.
如果读取的二维数组,是类似于下面这种形式
{ {2018,20},{2017,30},{2016,15}}
可以使用第三方的JFreeChart等进行图表绘制,优点可以输出图片,可以显示到网页或者JFrame/Frame窗口上.缺点:效果不是很好看.实现动态效果比较麻烦
可以使用JavaFX自带的图表组件进行绘制.优点:默认的效果不错,动态效果实现起来也很简单缺点:一般只用于本地客户端上的显示
使用BufferedImage和Graphics类来绘制一个图片,优点:自定义程度高,可以充分发挥想象,绘制一个拉风的效果.缺点:有点麻烦.代码有点长了.[一般只用于验证码等小图片的绘制]
JFreeChart效果图
JavaFX效果图(里面的数据是随即生成的,只是为了测试效果)
JavaFX饼状图的参考代码,我写了很多的注释
importjavafx.animation.*;
importjavafx.application.Application;
importjavafx.collections.*;
importjavafx.event.ActionEvent;
importjavafx.event.EventHandler;
importjavafx.geometry.Side;
importjavafx.scene.Scene;
importjavafx.scene.chart.PieChart;
importjavafx.scene.chart.PieChart.Data;
importjavafx.scene.control.*;
importjavafx.scene.effect.DropShadow;