- 浏览: 218080 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
wanxin533:
挺好,正要用
利用jfreechart实现温度计监控设备运行 -
jiutianzhifeng:
这个真的很有用!
Flex3 Style Explorer所见即所得美化flex应用 -
带个回家:
<div class="quote_title ...
利用jfreechart制作仪表盘 -
wosidanyang:
跑起来是跑起来了,为什么没图片
利用jfreechart制作仪表盘 -
带个回家:
要jar包的找我,或者自己下载:PS:本人只罗列自己全部的ja ...
利用jfreechart制作仪表盘
效果图如下:
jfreechart版本:
jfreechart 1.0.6
<%@ page contentType="text/html;charset=GBK"%>
<%@ page import="java.awt.Color,
org.jfree.chart.JFreeChart,
org.jfree.chart.servlet.ServletUtilities,
java.awt.Font,
java.awt.GradientPaint,
org.jfree.data.general.DefaultValueDataset,
org.jfree.experimental.chart.plot.dial.*,
org.jfree.ui.StandardGradientPaintTransformer,
org.jfree.ui.GradientPaintTransformType,
java.awt.Point
"%>
<%
//数据集合对象 此处为DefaultValueDataset
DefaultValueDataset dataset = new DefaultValueDataset();
//当前指针指向的位置,即:我们需要显示的数据
dataset = new DefaultValueDataset(20D);
//实例化DialPlot
DialPlot dialplot = new DialPlot();
dialplot.setView(0.0D, 0.0D, 1.0D, 1.0D);
//设置数据集合
dialplot.setDataset(dataset);
//开始设置显示框架结构
SimpleDialFrame simpledialframe = new SimpleDialFrame();
simpledialframe.setBackgroundPaint(Color.lightGray);
simpledialframe.setForegroundPaint(Color.darkGray);
dialplot.setDialFrame(simpledialframe);
//结束设置显示框架结构
GradientPaint gradientpaint = new GradientPaint(new Point(), new Color(255, 255, 255), new Point(), new Color(170, 170, 220));
DialBackground dialbackground = new DialBackground(gradientpaint);
dialbackground.setGradientPaintTransformer(new StandardGradientPaintTransformer(GradientPaintTransformType.VERTICAL));
dialplot.setBackground(dialbackground);
//设置显示在表盘中央位置的信息
DialTextAnnotation dialtextannotation = new DialTextAnnotation("温度");
dialtextannotation.setFont(new Font("Dialog", 1, 14));
dialtextannotation.setRadius(0.69999999999999996D);
dialplot.addLayer(dialtextannotation);
DialValueIndicator dialvalueindicator = new DialValueIndicator(0, "c");
dialplot.addLayer(dialvalueindicator);
//根据表盘的直径大小(0.88),设置总刻度范围
StandardDialScale standarddialscale = new StandardDialScale(-40D, 60D, -120D, -300D);
standarddialscale.setTickRadius(0.88D);
standarddialscale.setTickLabelOffset(0.14999999999999999D);
standarddialscale.setTickLabelFont(new Font("Dialog", 0, 14));
//主意是 dialplot.addScale()不是dialplot.addLayer()
dialplot.addScale(0, standarddialscale);
//设置刻度范围(红色)
StandardDialRange standarddialrange = new StandardDialRange(40D, 60D, Color.red);
standarddialrange.setInnerRadius(0.52000000000000002D);
standarddialrange.setOuterRadius(0.55000000000000004D);
dialplot.addLayer(standarddialrange);
//设置刻度范围(橘黄色)
StandardDialRange standarddialrange1 = new StandardDialRange(10D, 40D, Color.orange);
standarddialrange1.setInnerRadius(0.52000000000000002D);
standarddialrange1.setOuterRadius(0.55000000000000004D);
dialplot.addLayer(standarddialrange1);
//设置刻度范围(绿色)
StandardDialRange standarddialrange2 = new StandardDialRange(-40D, 10D, Color.green);
standarddialrange2.setInnerRadius(0.52000000000000002D);
standarddialrange2.setOuterRadius(0.55000000000000004D);
dialplot.addLayer(standarddialrange2);
//设置指针
org.jfree.experimental.chart.plot.dial.DialPointer.Pointer pointer = new org.jfree.experimental.chart.plot.dial.DialPointer.Pointer();
dialplot.addLayer(pointer);
//实例化DialCap
DialCap dialcap = new DialCap();
dialcap.setRadius(0.10000000000000001D);
dialplot.setCap(dialcap);
//生成chart对象
JFreeChart jfreechart = new JFreeChart(dialplot);
//设置标题
jfreechart.setTitle("设备取水温度采样");
String filename = ServletUtilities.saveChartAsPNG(jfreechart, 400, 300, session);
//调用DisplayChart(配置在web.xml中),生成图形
String graphURL = request.getContextPath() + "/DisplayChart?filename=" + filename;
%>
<table width="100%">
<tr>
<td align="center">
<!-- 生成图形 -->
<img src="<%= graphURL %>" width=400 height=300 border=0 alt="">
</td>
</tr>
</table>
- 仪表盘.rar (1.6 KB)
- 下载次数: 699
评论
大哥,肯定没有撒,楼主提供的代码是测试。你得搞现实啊。。。不懂再问我,如果我不在线,请留言:http://developer.aiwgame.com/ask-question
PS:本人只罗列自己全部的jar包,肯定跑得起,至于多余的,请你们自己慢慢测试哈
http://developer.aiwgame.com
[url]gnujaxp.jar
iText-2.1.5.jar
jcommon-1.0.17.jar
jfreechart-1.0.14-experimental.jar
jfreechart-1.0.14-swt.jar
jfreechart-1.0.14.jar
junit.jar
servlet.jar
swtgraphics2d.jar[/url]
发表评论
-
完整Jfreechart饼图实例包含大部分设置
2008-06-26 16:25 7473/** **QQ:252574345 **MSN:lele_l ... -
利用jfreechart实现温度计监控设备运行
2008-06-26 15:01 2837/** **QQ:252574345 **MSN:lele ... -
jfreechart 柱图常用设置方法
2008-06-10 18:35 4414/** **QQ:252574345 **MSN:lele_l ... -
如何设置jfreechart周报曲线图的时间轴显示格式
2008-06-05 13:41 15864/** **QQ:252574345 **MSN:lele_l ... -
如何将jfreechart曲线图纵坐标值限定在一定范围内
2008-06-05 13:35 7749/** **QQ:252574345 **MSN:lele ... -
在jfreechart曲线图上显示数据点
2008-06-05 13:27 5903/** **QQ:252574345 **MSN ... -
如何设置jfreechart时间序列图日期轴显示格式
2008-06-05 10:18 4015/** **QQ:252574345 **MSN:lele_l ... -
如何设置jfreechart时间序列图时间轴间距和格式
2008-06-05 10:12 8947/** **QQ:252574345 **MSN:lele_l ... -
jfreechart 时间序列图当后台提供一个数据点的时候为什么图形上不显示
2008-06-05 10:04 2396/** **QQ:252574345 **MSN:lele_l ... -
如何设置jfreechart时间序列图曲线颜色
2008-06-05 09:49 6528/** **QQ:252574345 **MSN:lele_l ... -
修改JFreeChart 图片的存放路径
2008-06-04 14:27 6585/** **QQ:252574345 **MSN:lele_l ... -
如何在对比型柱图上设置"数据下探"和文字说明
2008-06-04 14:09 1621/** **QQ:252574345 **MSN:lele_l ... -
为何柱图上设置了热点链接,链接无效
2008-06-04 13:37 1929/** **QQ:252574345 **MSN:lele_l ... -
在普通柱图上实现"数据下探"
2008-06-04 13:12 1933/** **QQ:252574345 **MSN:lele_ ... -
如何设置柱图曲线图纵坐标间距
2008-06-04 11:06 2335/** **QQ:252574345 **MSN:lele_l ... -
如何设置柱图的纵坐标数值格式(显示整数,小数,百分比等)
2008-06-04 11:01 8508/** **QQ:252574345 **MSN:l ... -
如何在jfreechart 柱图柱子上显示对应数值
2008-06-04 10:51 2689/** **QQ:252574345 **MS ... -
如何设置Stacked3DBar每个柱子最大宽度和柱间距
2008-06-04 10:42 2084/** **QQ:252574345 **MSN:lele ... -
如何在Stacked3DBar中设置各个柱子块颜色
2008-06-04 10:39 1304/** **QQ:252574345 **MSN:lele_ ... -
jfreechart 常用设置方法
2008-06-04 10:23 5288公共JFreeChart类: JFreeChart chart ...
相关推荐
在这个例子中,我们将探讨如何利用JFreeChart来创建一个动态的仪表盘。 首先,我们需要创建一个`DefaultValueDataset`对象,这是JFreeChart用来存储数据的基本类。在这个案例中,我们创建了一个包含单个值(20D)的...
JFreeChart,作为一款功能强大的Java图表绘制工具,提供了丰富的图表类型支持,包括饼图、柱状图、线图、区域图、分布图、混合图、甘特图及仪表盘等,几乎涵盖了所有常见的数据可视化需求。本文将深入探讨如何在...
在仪表盘的上下文里,可能用锥形渐变来制作从中心向外逐渐变化颜色的背景效果,给表盘增加视觉吸引力。 在实现这个Demo时,开发者首先会创建一个自定义的QWidget子类,这将是仪表盘的可视表示。在重写paintEvent()...
jFreeChart适用于多种场景,尤其在数据分析、报告生成、仪表盘设计等方面表现出色。例如,在企业内部,财务部门可能需要定期制作复杂的财务报表,jFreeChart能帮助他们快速地将数据可视化,使报告更加直观易懂。又如...
- 仪表盘开发:在企业级应用或Web应用的仪表盘中,JFreeChart可以用来展示关键性能指标。 - 教育和演示:教学材料或技术演示中,使用JFreeChart制作图表能直观地解释概念。 总之,JFreeChart是Java开发者手中的一...
**JFreeChart** 是一款基于Java的开源图形库,它提供了丰富的图表类型,如饼图、柱状图、折线图、散点图、时序图、甘特图、仪表盘图、混合图、symbol图和风力方向图等,用于在应用程序、Applets、Servlets、JSP等...
这个库广泛应用于数据可视化,包括但不限于科学图表、商业报告、仪表盘和软件界面。JFreeChart提供了一系列丰富的图表类型,如柱状图、折线图、饼图、散点图、甘特图以及3D图表等,能够满足各种数据展示的需求。 1....
4. **仪表盘和监控**:实时数据监控和仪表盘应用可以利用JFreeChart实现动态图表,展示系统状态或性能指标。 **使用JFreeChart的基本步骤:** 1. **导入库**:在Java项目中,需要添加JFreeChart的依赖,通常通过...
1. **多样化图表类型**:JFreeChart支持多种图表类型,如柱状图、饼图、线图、散点图、面积图、甘特图、仪表盘图等,满足不同场景下的数据可视化需求。 2. **高度定制化**:JFreeChart允许开发者自定义图表的每一个...
6. 圆形图(Pie Dial)和仪表盘(Gauges):用于模拟物理仪表的可视化效果。 7. 热力图(Heat Maps):通过颜色深浅表示二维数据的分布。 二、JFreeChart关键特性 1. 图表类型多样:除了上述的基本图表类型,...
JFreeChart是一款强大的Java图表库,它允许开发者创建多种类型的高质量图表,如柱状图、饼图、线图、散点图以及复杂的仪表盘图表。这个压缩包"JFreeChart所需要的包.rar"包含了两个核心的JAR文件,它们是实现...
- **特殊图表**:jFreeChart还支持制作仪表盘和温度计等专业图表,为数据分析提供直观的视觉效果。 2. **cewolf** cewolf是另一个基于Java的Flex报表组件,它允许在Flex客户端直接生成和显示图表,提供更丰富的...
该库支持多种图表类型,如饼图、柱状图(包括普通和堆叠柱状图)、线图、区域图、分布图、混合图、甘特图以及仪表盘等。这些图表能够广泛应用于数据分析、报告制作和Web应用程序开发中。 #### 准备开发环境 在深入...