由于项目需要,用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;
%>
<img src="<%= graphURL %>" width=750 height=400 border=0 usemap="#<%= filename %>"/>
大家帮着看看,到底是怎么回事。
代码如下:<%@ 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;
%>
<img src="<%= graphURL %>" width=750 height=400 border=0 usemap="#<%= filename %>"/>
解决方案 »
- 有谁知道JSF1.2和JSF2.0在标签组件上有哪些区别,公司开晨会要每个人都讲。希望高手指点,因为本人刚进公司对1.2和2.0都不怎么熟悉,让人纠结
- 请教关于roller的安装问题
- SSH与JSP的书推荐几本([入门与提高]),谢谢!!!!
- 这个servlet错在哪里?求大大们解决阿
- javabean的问题
- [求助]servlet用法??
- 跟大家探讨一个问题:
- 请问J2sdk,resin和oracle8.1.7 是否有冲突!如何解决???
- 高分相送:如何改变浏览器端的超时时间?
- 请帮我看这个BEAN,提示can't resolve symbol!
- Java.lang.Reflect反射机制可不可以实现这样的功能?就是动态调用setOption1(optionValue1),setOption2(optionValue2),setOption3(option
- 请问在JFreeChart里设置columnKey 是否垂直显示的对象怎么得到的?
小红叉叉上的url是 http://localhost:8080/JFree/servlet/DisplayChart?filename=jfreechart-33913.jpeg但是就是显示不出来啊
急盼高手解答