博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
jfreechart java_java jfreechart
阅读量:6469 次
发布时间:2019-06-23

本文共 2961 字,大约阅读时间需要 9 分钟。

org.jfree.chart.JFreeChart,

org.jfree.chart.plot.PlotOrientation,

org.jfree.chart.servlet.ServletUtilities,

org.jfree.data.category.CategoryDataset,

org.jfree.data.general.DatasetUtilities,

org.jfree.chart.plot.*,

org.jfree.chart.labels.*,

org.jfree.chart.renderer.category.BarRenderer3D,

java.awt.*, org.jfree.ui.*,

org.jfree.chart.axis.AxisLocation"%>

//连接数据库

Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();

String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=jfree";

String usr="sa";

String pwd="";

Connection conn=DriverManager.getConnection(url,usr,pwd);

Statement stmt=conn.createStatement();

String sql="select * from jfree order by id";

ResultSet rs=stmt.executeQuery(sql);

while(rs.next())

{

int a = rs.getInt("a");

int b = rs.getInt("b");

int c = rs.getInt("c");

int d = rs.getInt("d");

String e = rs.getString("e");

String f = rs.getString("f");

double[][] data = new double[][] {

{a, b, c, d}, {a, b, c, d}, {a, b, c, d}, {a, b, c, d}};

String[] rowKeys = {f, f,f, f};

String[] columnKeys = {e, e, e, e};

CategoryDataset dataset = DatasetUtilities.createCategoryDataset(rowKeys, columnKeys, data);

JFreeChart chart = ChartFactory.createBarChart3D("城市选择", "城市", "选择", dataset, PlotOrientation.VERTICAL, true, true, false);

CategoryPlot plot = chart.getCategoryPlot();

plot.setBackgroundPaint(Color.white); //设置网格背景颜色

plot.setDomainGridlinePaint(Color.pink);//设置网格竖线颜色

plot.setRangeGridlinePaint(Color.pink); //设置网格横线颜色

BarRenderer3D renderer = new BarRenderer3D(); //显示每个柱的数值,并修改该数值的字体属性

renderer.setBaseItemLabelGenerator(new StandardCategoryItemLabelGenerator()); //默认的数字显示在柱子中,通过如下两句可调整数字的显示

renderer.setBaseItemLabelsVisible(true); //注意:此句很关键,若无此句,那数字的显示会被覆盖,给人数字没有显示出来的问题

renderer.setBasePositiveItemLabelPosition(new ItemLabelPosition(ItemLabelAnchor.OUTSIDE12, TextAnchor.BASELINE_LEFT));

renderer.setItemLabelAnchorOffset(10D); //设置每个地区所包含的平行柱的之间距离 //

renderer.setItemMargin(0.3); plot.setRenderer(renderer); //设置地区、销量的显示位置 //将下方的“肉类”放到上方

plot.setDomainAxisLocation(AxisLocation.TOP_OR_RIGHT); //将默认放在左边的“销量”放到右方

plot.setRangeAxisLocation(AxisLocation.BOTTOM_OR_RIGHT);

String filename = ServletUtilities.saveChartAsPNG(chart, 700, 400, null, session);

String graphURL = request.getContextPath() + "/DisplayChart?filename=" + filename;

%>

<%=%20graphURL%20%>

少个}不知道改插哪或者请高手帮我改下代码~谢谢啊

加了这个出现

java.lang.IllegalArgumentException: Duplicate items in 'rowKeys'.

org.jfree.data.general.DatasetUtilities.createCategoryDataset(DatasetUtilities.java:412)

org.apache.jsp.sample10_jsp._jspService(sample10_jsp.java:79)

org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)

javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:334)

org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)

org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)

javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

展开

转载地址:http://uvdko.baihongyu.com/

你可能感兴趣的文章
ElasticSearch单节点模式的搭建
查看>>
我的友情链接
查看>>
常用UI控件之UIImageView
查看>>
restful架构下springmvc controller中delete、put方法传参问题
查看>>
script&gt
查看>>
我的友情链接
查看>>
AFNetworking 3.0.4更新使用
查看>>
计算机入门基础学习
查看>>
open***脚本自动部署
查看>>
【示例代码】1KB JavaScript代码编写的3D蜜蜂
查看>>
2016年3月28日作业
查看>>
在VMware上安装Red Hat Linux AS5
查看>>
信息安全测评认证的重要性
查看>>
Tomcat解决中文乱码
查看>>
nginx+tomcat 跑jsp
查看>>
我的2013
查看>>
JS复选框折叠特效
查看>>
H5案例分享:微信视频播放全屏问题
查看>>
垂直行业大数据分层架构图
查看>>
centos软件源码编译安装httpd
查看>>