JFreeChar如何使用?

JFreeChar如何使用?,第1张

其实挺简单的,注意我写的注释!

<%@ page contentType="text/htmlcharset=GB2312" %>

<%@ page import="org.jfree.chart.JFreeChart,org.jfree.chart.ChartUtilities,

org.jfree.chart.ChartFactory,

org.jfree.chart.plot.PlotOrientation,

org.jfree.data.category.DefaultCategoryDataset"%> //上面是需要添加的头文件

<html>

<body>

<%

String dataName[]=new String[]//显示数据系列

int dataValueCount[]=//数据系列对应的值

//以上两行可以从数据库里去取值,用循环写入数组

//------创建数据集,并设置值------

DefaultCategoryDataset categoryDataset = newDefaultCategoryDataset()//这个表示柱状图

for(int i=0i<dataName.lengthi++)

categoryDataset.addValue(dataValueCount[i],dataName[i],dataName[i])//循环写入数据集

String titleString="用户年龄阶段分布统计图"//图的标题

JFreeChart chart = ChartFactory.createBarChart(titleString,"用户年龄阶段","数量",

categoryDataset,PlotOrientation.VERTICAL,true,true,false)//chart就是欲创建的图表

ChartUtilities.writeChartAsJPEG(response.getOutputStream(),chart,500,300)//这行的意思是输出成一个JPEG形式的文件显示

%>

</body>

</html>

其实后面还有很多参数的,比如颜色,柱子的标题等等,太多属性了,这个你查看一下JFREECHART的文档就行了,比如下面这样,很容易吧。

Font labelFont = new Font("SansSerif", Font.TRUETYPE_FONT, 12)

/*

* VALUE_TEXT_ANTIALIAS_OFF表示将文字的抗锯齿关闭,

* 使用的关闭抗锯齿后,字体尽量选择12到14号的宋体字,这样文字最清晰好看

*/

// chart.getRenderingHints().put(RenderingHints.KEY_TEXT_ANTIALIASING,RenderingHints.VALUE_TEXT_ANTIALIAS_OFF)

chart.setTextAntiAlias(false)

chart.setBackgroundPaint(Color.white)

// create plot

CategoryPlot plot = chart.getCategoryPlot()

// 设置横虚线可见

plot.setRangeGridlinesVisible(true)

// 虚线色彩

plot.setRangeGridlinePaint(Color.gray)

// 数据轴精度

NumberAxis vn = (NumberAxis) plot.getRangeAxis()

// vn.setAutoRangeIncludesZero(true)

DecimalFormat df = new DecimalFormat("#0.00")

vn.setNumberFormatOverride(df)// 数据轴数据标签的显示格式

// x轴设置

CategoryAxis domainAxis = plot.getDomainAxis()

domainAxis.setLabelFont(labelFont)// 轴标题

domainAxis.setTickLabelFont(labelFont)// 轴数值

属性比较多,不可能全贴出来,也不必全用,设置一些实用的属性即可。

<imgsrc="/sss/servlet/DisplayChart?filename=jfreechart-2885782382550559397.png"border=0/>


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/tougao/11195141.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-14
下一篇 2023-05-14

发表评论

登录后才能评论

评论列表(0条)

保存