此案例是用swing显示数据的。须要引入jfreechart相关包。不同版本号可能包不同样。本人用的是

此案例在ssi框架下会报错,不用框架就没问题。

Java后台逻辑代码:

public class BarChart {

ChartPanel frame1;

public BarChart() {

CategoryDataset dataset = getDataSet();

JFreeChart chart = ChartFactory.createBarChart3D("水果", // 图表标题

"水果种类", // 文件夹轴的显示标签

"数量", // 数值轴的显示标签

dataset, // 数据集

PlotOrientation.VERTICAL, // 图表方向:水平、垂直

true, // 是否显示图例(对于简单的柱状图必须是false)

false, // 是否生成工具

false // 是否生成URL链接

);

// 从这里開始

CategoryPlot plot = chart.getCategoryPlot();// 获取图表区域对象

CategoryAxis domainAxis = plot.getDomainAxis(); // 水平底部列表

domainAxis.setLabelFont(new Font("黑体", Font.BOLD, 14)); // 水平底部标题

domainAxis.setTickLabelFont(new Font("宋体", Font.BOLD, 12)); // 垂直标题

ValueAxis rangeAxis = plot.getRangeAxis();// 获取柱状

rangeAxis.setLabelFont(new Font("黑体", Font.BOLD, 15));

chart.getLegend().setItemFont(new Font("黑体", Font.BOLD, 15));

chart.getTitle().setFont(new Font("宋体", Font.BOLD, 20));// 设置标题字体

// 到这里结束,尽管代码有点多,但仅仅为一个目的,解决汉字乱码问题

frame1 = new ChartPanel(chart, true); // 这里也能够用chartFrame,能够直接生成一个独立的Frame

}

private static CategoryDataset getDataSet() {

DefaultCategoryDataset dataset = new DefaultCategoryDataset();

List data = new ArrayList();

NewsDao dao = new NewsDao();

ArrayList list = dao.queryAll();

double value =0;

String rowKeys=null;

String columnKeys=null;

for (News news : list) {

//data.add(new News(news.getNewsId(), news.getTypeId(), news

//.getTitle(), news.getPublishTime(), news.getBody(), news

//.getTag(), news.getAuthor(), news.getClicks(), news

//.getImgUrl()));

value = news.getNewsId();

rowKeys = news.getTitle();

columnKeys = news.getAuthor();

dataset.addValue(value, rowKeys, columnKeys);

System.out.println(value+" "+rowKeys+" "+columnKeys);

}

//if(value!=0&&rowKeys!=null&&columnKeys!=null){

//System.out.println(value+" "+rowKeys+" "+columnKeys);

//dataset.addValue(value, rowKeys, columnKeys);

//}

//dataset.addValue(100, "北京", "苹果");

//dataset.addValue(100, "上海", "苹果");

//dataset.addValue(100, "广州", "苹果");

//dataset.addValue(200, "北京", "梨子");

//dataset.addValue(200, "上海", "梨子");

//dataset.addValue(200, "广州", "梨子");

//dataset.addValue(300, "北京", "葡萄");

//dataset.addValue(300, "上海", "葡萄");

//dataset.addValue(300, "广州", "葡萄");

//dataset.addValue(400, "北京", "香蕉");

//dataset.addValue(400, "上海", "香蕉");

//dataset.addValue(400, "广州", "香蕉");

//dataset.addValue(500, "北京", "荔枝");

//dataset.addValue(500, "上海", "荔枝");

//dataset.addValue(500, "广州", "荔枝");

return dataset;

}

public ChartPanel getChartPanel() {

return frame1;

}

public static void main(String[] args) {

JFrame frame = new JFrame("Java数据统计图");

// frame.setLayout(new GridLayout(2,2,10,10));

frame.add(new BarChart().getChartPanel()); // 加入柱形图

// frame.add(new BarChart1().getChartPanel()); //加入柱形图的还有一种效果

// frame.add(new PieChart().getChartPanel()); //加入饼状图

// frame.add(new TimeSeriesChart().getChartPanel()); //加入折线图

frame.setBounds(50, 50, 800, 600);

frame.setVisible(true);

}

}其它类就不上代码了,跟你平时连数据库一样。

看张效果图:[数据乱写的]

Java读取数据库数据生成柱状图

标签:type   space   height   time()   set   tor   统计图   article   undefined

本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉

本文系统来源:http://www.cnblogs.com/yutingliuyl/p/6852630.html

java传入数据库生成柱状图_Java读取数据库数据生成柱状图相关推荐

  1. python提取excel前十行生成图_Python读取Excel数据生成图表 v2.0

    Python读取Excel数据生成图表 v2.0 一.需求背景 自己一直在做一个周基金定投模拟,每周需要添加一行数据,并生成图表.以前一直是用Excel实现的.但数据行多后,图表大小调整总是不太方便, ...

  2. python读excel表格数据绘制图表_Python读取Excel数据生成图表 v2.0

    原博文 2020-06-15 15:09 − ## Python读取Excel数据生成图表 v2.0 ## 一.需求背景 自己一直在做一个周基金定投模拟,每周需要添加一行数据,并生成图表.以前一直是用 ...

  3. python运行微软图标代码_Python读取xlsx数据生成图标代码实例

    运行结果: 程序代码如下: #将excel中的数据进行读取分析 import openpyxl import numpy as np import math import matplotlib.pyp ...

  4. java 数据库数据写接口_Java读取接口数据并保存到数据库

    public class Test05GetData { //guo sheng shi xian zhen cun的表结构完全一样.数据全部读取完毕之后再将数据整合到同一张表中 protected  ...

  5. java与mysql的交互_java与数据库交互常用到的一些方法

    下面我整理了一下java中常用的几个与数据库交互的常用方法,仅供参考: 1.执行SQL(dao层的实现类中) (1)SQL查询: //import org.hibernate.Query; //imp ...

  6. SQLite数据库如何存储和读取二进制数据

    1.       存储二进制数据 SQLite提供的绑定二进制参数接口函数为: int sqlite3_bind_blob(sqlite3_stmt*, int, const void*, int n ...

  7. php获取数据库所有记录,PHP读取数据库指定表所有记录范例

    本代码实现php连接并读取MYSQL指定表中的所有内容,并以一个带表头的表格来显示所有内容,虽然很简单,但对于PHP初学者来说,这是PHp与MYSQL的最基本的操作. PHP读取数据库指定表所有记录范 ...

  8. java json 中文_java读取json数据中文乱码解决

    java读取json数据出现乱码的代码:(推荐:java视频教程)//从json文件中读取数据 StringBuffer stringBuffer = new StringBuffer(); try ...

  9. java读取字节流设置字节数组长度_java读取流数据时,字节缓存数组,第一次读取时,是否读满,才进行下次读取??...

    使用缓存字节数组读取java字节流时,第一次读取是,读满缓存字节数组大小,才进行下次读取,还是随机读一个小于数组大小的值,再进行下次读取??? 读取本地文件时,首次读取读满整个字节数组,在进行下次读取 ...

最新文章

  1. Datawhale组队学习 Task01:数组(1天)
  2. 一张图搞定Android学习路线
  3. 学习OpenCV(一)从Mat讲起
  4. 2011年GALGAME不朽巨作推荐
  5. Cocos Creator实战教程(5)】——打砖块(物理引擎,碰撞检测)
  6. 深度解析vsftpd服务
  7. java游戏怎么设置背景色_java-将背景色设置为JButton
  8. java实时读取文件内容,java实时读取和写入文件
  9. 马云放弃阿里巴巴所有权?华硕裁员上百人;扎克伯格账号被黑 | 极客头条
  10. 数据库双机热备(代码实现)
  11. mina 和 xsocket
  12. Android4.4之Camera2预览流程APP到Driver(十四)
  13. [置顶] asp.net(c#)中相对路径(虚拟路径)和物理磁盘路径的转换
  14. 单片机基础:MCS-51单片机的硬件结构(附硬件结构框图)
  15. linux企业版as,Redhat 企业版 LINUX AS5.0 下载地址
  16. 不确定性管理,更需要领导力
  17. 达芬奇--艺工结合先驱
  18. 企业邮箱客户端POP协议收信后,Webmail的邮件被删除,如何调整?
  19. 苏州数字孪生工厂3D模型,三维可视化建模,三维虚拟仿真交互模型
  20. warning: use of old-style cast

热门文章

  1. shell循环和分支
  2. 如何通过Git GUI将自己本地的项目上传至Github
  3. I/O多路转接之poll,epoll
  4. Vxworks增加system call
  5. Firefox 5 公开测试下载
  6. 一个怎样得到treeView值的小例子
  7. linux分辨率和用户有关吗,Linux系统在高分屏非正常分辨率显示
  8. 用户体验数据分析 书单_如何使用数据改善用户体验设计
  9. 5193. 删除字符使字符串变好
  10. figma下载_如何在Figma中创建逼真的3D对象