站内搜索: 请输入搜索关键词

当前页面: 开发资料首页JSP 专题JFreeChart图像显示问题

JFreeChart图像显示问题

摘要: JFreeChart图像显示问题


由于项目需要,用JFreeChart画曲线图,不过在练习的过程中,图片就是无法显示出来,图片上就显示一个小红叉叉,真是急人。
大家帮着看看,到底是怎么回事。
代码如下:<%@ page contentType="text/html;charset=GBK"%>

<%@ page import="java.awt.Color"%>
<%@ page import="java.sql.Connection"%>
<%@ page import="java.sql.ResultSet"%>
<%@ page import="java.sql.SQLException"%>
<%@ page import="java.sql.Statement"%>
<%@ page import="org.jfree.chart.ChartFactory"%>
<%@ page import="org.jfree.chart.JFreeChart"%>
<%@ page import="org.jfree.chart.axis.DateAxis"%>
<%@ page import="org.jfree.chart.plot.XYPlot"%>
<%@ page import="org.jfree.chart.renderer.xy.StandardXYItemRenderer"%>
<%@ page import="org.jfree.chart.renderer.xy.XYLineAndShapeRenderer"%>
<%@ page import="org.jfree.chart.servlet.ServletUtilities"%>
<%@ page import="org.jfree.data.time.Day"%>
<%@ page import="org.jfree.data.time.Hour"%>
<%@ page import="org.jfree.data.time.TimeSeries"%>
<%@ page import="org.jfree.data.time.TimeSeriesCollection"%>
<%@ page import="org.jfree.data.xy.XYDataset"%>
<%@ page import="org.jfree.ui.RectangleInsets"%>
<%@ page import="org.jfree.data.time.Minute"%>
<%
TimeSeries timeseries1 = new TimeSeries("F1", Minute.class);
TimeSeries timeseries2 = new TimeSeries("F2", Minute.class);
timeseries1.add(new Minute(2, 4,4,4,2001), 4181.8);
timeseries1.add(new Minute(3,4,4,4, 2001), 4167.3);
timeseries1.add(new Minute(4,4,4,4, 2001), 4153.8);
timeseries1.add(new Minute(5,4,4,4, 2001), 4167.6);
timeseries1.add(new Minute(6,4,4,4, 2001), 4158.8);
timeseries1.add(new Minute(7,4,4,4, 2001), 4148.3);
timeseries1.add(new Minute(8,4,4,4, 2001), 4153.9);
timeseries1.add(new Minute(9,4,4,4, 2001), 4142.7);
timeseries1.add(new Minute(10,4,4,4, 2001), 4123.2);
timeseries1.add(new Minute(11,4,4,4, 2001), 4131.8);
timeseries1.add(new Minute(12,4,4,4, 2001), 4139.6);


timeseries2.add(new Minute(2,4,4,4, 2001), 4129.6);
timeseries2.add(new Minute(3,4,4,4, 2001), 4123.2);
timeseries2.add(new Minute(4,4,4,4, 2001), 4117.2);
timeseries2.add(new Minute(5,4,4,4, 2001), 4124.1);
timeseries2.add(new Minute(6,4,4,4, 2001), 4122.6);
timeseries2.add(new Minute(7,4,4,4, 2001), 4119.2);
timeseries2.add(new Minute(8,4,4,4, 2001), 4116.5);
timeseries2.add(new Minute(9,4,4,4, 2001), 4112.7);
timeseries2.add(new Minute(10,4,4,4, 2001),4101.5);
timeseries2.add(new Minute(11,4,4,4, 2001), 4106.1);
timeseries2.add(new Minute(12,4,4,4, 2001), 4110.3);




TimeSeriesCollection dataset = new TimeSeriesCollection();
dataset.addSeries(timeseries1);
dataset.addSeries(timeseries2);

dataset.setDomainIsPointsInTime(true);

XYDataset xydataset = (XYDataset) dataset;
JFreeChart chart = ChartFactory.createTimeSeriesChart(
"走??",
"??",
"?",
xydataset,
true,
true,
true
);

chart.setBackgroundPaint(new Color(0xff8833));
XYPlot plot = chart.getXYPlot();


org.jfree.chart.renderer.xy.XYItemRenderer xyitemrenderer = plot.getRenderer();
if (xyitemrenderer instanceof XYLineAndShapeRenderer) {
XYLineAndShapeRenderer xylineandshaperenderer = (XYLineAndShapeRenderer)xyitemrenderer;
xylineandshaperenderer.setBaseShapesVisible(true);
xylineandshaperenderer.setBaseShapesFilled(true);
}
DateAxis axis = (DateAxis) plot.getDomainAxis();


String filename = ServletUtilities.saveChartAsJPEG(chart, 750, 400, null, session);
String graphURL = request.getContextPath() + "/servlet/DisplayChart?filename=" + filename;
%>
" width=750 height=400 border=0 usemap="#<%= filename %>"/>










怎么没有人来,各位,帮个忙阿,马上就要用了阿。。。。。。。。


代码 本身没有错,其他原因


其他原因,都有什么原因?请再细说一下,还是不懂啊。
小红叉叉上的url是 http://localhost:8080/JFree/servlet/DisplayChart?filename=jfreechart-33913.jpeg

但是就是显示不出来啊


首先你肯定图片已经生成了吗?
没有的话请再检查程序;
生成了的话,检查图片引用地址是否正确


请问图片生成在什么位置? 我现在对这个还不是很熟悉?


上面是你 整个 页面 代码 吗?


图片生成 是放倒 临时目录里面的 代码 是没有问题 的 可能是其他 小问题 细节


是我整个页面的代码 这只是我练习用的 如果这个不通,估计整个项目也不可能成功



可以看看http://www.9i5e.com/Company.aspx的例子


我看了,图片根本没有生成,但是为什么?



我帮你试了 一下 再我这显示是正常的!


楼上的 非常感谢你

但是在我这连图片都没有生成,到底是怎么回事呢?

用这个还需要别的什么东西么 就这一个JSP文件不就可以了么


以前我遇见过 现在忘 杂解决了。。。。


我来顶


FinalKing(编译女人....小心异常...)

你确定我现在写的这个代码是正确的么? 肯定是配置的问题么?


我遇到的问题是,在weblogic下可以显示,但放到webshpere下就无法显示了,不知道为什么啊
急盼高手解答。。。


↑返回目录
前一篇: Java.lang.Reflect反射机制可不可以实现这样的功能?就是动态调用setOption1(optionValue1),setOption2(optionValue2),setOption3(option
后一篇: js 能不能加入jsp的代码