Jfreechart中画折线图怎么使折点处突出显示啊
Jfreechart中画折线图怎么使折点处突出显示啊
就是把那个折点画成一个方框或大的圆点
我现在的程序可以使用就是画不出点的效果,我用的是Jfreechart1.0 没有这个类StandardLegend
请各位帮忙,谢谢啦
************* 1.jsp ***************
<%@ page contentType="text/html;charset=GBK"%>
<%@ page import = "org.jfree.chart.ChartFactory"%>
<%@ page import = "org.jfree.chart.ChartPanel"%>
<%@ page import = "org.jfree.chart.JFreeChart"%>
<%@ page import = "org.jfree.chart.axis.NumberAxis"%>
<%@ page import = "org.jfree.chart.plot.CategoryPlot"%>
<%@ page import = "org.jfree.chart.plot.PlotOrientation"%>
<%@ page import = "org.jfree.chart.renderer.category.LineAndShapeRenderer"%>
<%@ page import = "org.jfree.chart.title.LegendTitle"%>
<%@ page import = "org.jfree.data.category.CategoryDataset"%>
<%@ page import = "org.jfree.data.category.DefaultCategoryDataset"%>
<%@ page import = "org.jfree.chart.servlet.ServletUtilities"%>
<%@ page import = "org.jfree.chart.block.BlockBorder"%>
<%@ page import = "org.jfree.ui.RectangleEdge"%>
<%
// row keys...
String series1 = "First";
String series2 = "Second";
String series3 = "Third";
// column keys...
String type1 = "Type 1";
String type2 = "Type 2";
String type3 = "Type 3";
String type4 = "Type 4";
String type5 = "Type 5";
String type6 = "Type 6";
String type7 = "Type 7";
String type8 = "Type 8";
// create the dataset...
DefaultCategoryDataset dataset = new DefaultCategoryDataset();
dataset.addValue(1.0, "17901", "2006042008");
dataset.addValue(4.0, "17908", "2006042008");
dataset.addValue(3.0, "17909", "2006042008");
dataset.addValue(5.0, "17909", "2006042009");
dataset.addValue(5.0, "17911", "2006042008");
dataset.addValue(7.0, "17951", "2006042008");
dataset.addValue(7.0, "17961", "2006042008");
dataset.addValue(8.0, "17969", "2006042008");
dataset.addValue(8.0, "17991", "2006042008");
dataset.addValue(15.0, "17911", "2006042009");
dataset.addValue(17.0, "17951", "2006042009");
dataset.addValue(17.0, "17961", "2006042009");
dataset.addValue(18.0, "17969", "2006042009");
dataset.addValue(18.0, "17991", "2006042009");
// create the chart...
JFreeChart chart = ChartFactory.createLineChart(
"血压水平分布图", // chart title
"Type", // domain axis label
"Value", // range axis label
dataset, // data
PlotOrientation.VERTICAL, // orientation
true, // include legend
true, // tooltips
true // urls
);
// NOW DO SOME OPTIONAL CUSTOMISATION OF THE CHART...
LegendTitle legend = chart.getLegend();
legend.setPosition(RectangleEdge.BOTTOM);
legend.setBorder(BlockBorder.NONE);
/* StandardLegend legend = (StandardLegend) chart.getLegend();
legend.setDisplaySeriesShapes(true);
legend.setShapeScaleX(1.5);
legend.setShapeScaleY(1.5);
legend.setDisplaySeriesLines(true); */
CategoryPlot plot = chart.getCategoryPlot();
// customise the range axis...
NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();
rangeAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());
rangeAxis.setAutoRangeIncludesZero(true);
rangeAxis.setUpperMargin(0.10);
rangeAxis.setLabelAngle(Math.PI / 10.0);
LineAndShapeRenderer renderer = (LineAndShapeRenderer) plot.getRenderer();
//renderer.setItemLabelsVisible(true);
//renderer.setShape(new java.awt.Rectangle(2,2));
renderer.setShape(new java.awt.geom.Ellipse2D.Double(-11.5, -11.5, 13.0, 13.0));
// renderer.setShape(new java.awt.geom.Ellipse2D.Double(-1.5, -1.5, 3.0, 3.0));
plot.setRenderer(renderer);
String filename = ServletUtilities.saveChartAsPNG(chart, 800, 500, null, session);
String graphURL = request.getContextPath() + "/DisplayChart0?filename=" + filename;
System.out.println("filename="+filename);
System.out.println("graphURL="+graphURL);
%>
<img src="<%= graphURL %>" width=800 height=500 border=0 usemap="#<%= filename %>">
***************** End ***************