public JFreeChart getChart()throws IOException
{
JFreeChart chart = ChartFactory.createLineChart(
new String(title.getBytes("iso_8859_1"),"gb2312"), // 图表标题
new String(vertical_label.getBytes("iso_8859_1"),"gb2312"), // 目录轴的显示标签
new String(horizontal_label.getBytes("iso_8859_1"),"gb2312"), // 数值轴的显示标签
this.getDataSet(), // 数据集
isVertical?PlotOrientation.VERTICAL:PlotOrientation.HORIZONTAL, // 图表方向:水平、垂直
true, // 是否显示图例(对于简单的柱状图必须是false)
false, // 是否生成工具
false // 是否生成URL链接
); // NOW DO SOME OPTIONAL CUSTOMISATION OF THE CHART...
StandardLegend legend = (StandardLegend) chart.getLegend();
legend.setDisplaySeriesShapes(true); chart.setBackgroundPaint(new Color(0xCC, 0xCC, 0xFF)); CategoryPlot plot = chart.getCategoryPlot(); // customise the domain axis...
CategoryAxis domainAxis = plot.getDomainAxis();
domainAxis.setVerticalCategoryLabels(true); // customise the range axis...
NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();
rangeAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());
rangeAxis.setAutoRangeIncludesZero(true);
rangeAxis.setUpperMargin(0.20);
rangeAxis.setLabelAngle(Math.PI / 2.0); // customise the renderer...
LineAndShapeRenderer renderer = (LineAndShapeRenderer) plot.getRenderer();
renderer.setDrawShapes(true); renderer.setSeriesStroke(
0, new BasicStroke(2.0f,
BasicStroke.CAP_ROUND,
BasicStroke.JOIN_ROUND,
1.0f,
new float[] {10.0f, 6.0f},
0.0f)
);
renderer.setSeriesStroke(
1, new BasicStroke(2.0f,
BasicStroke.CAP_ROUND,
BasicStroke.JOIN_ROUND,
1.0f,
new float[] {6.0f, 6.0f},
0.0f)
);
renderer.setSeriesStroke(
2, new BasicStroke(2.0f,
BasicStroke.CAP_ROUND,
BasicStroke.JOIN_ROUND,
1.0f,
new float[] {2.0f, 6.0f},
0.0f)
); renderer.setItemLabelsVisible(true);
renderer.setItemLabelTextAnchor(TextAnchor.BOTTOM_CENTER);
renderer.setItemLabelAnchor(ItemLabelAnchor.OUTSIDE12); return chart;
}
/**
*
* @return
*/
public CategoryDataset getDataSet() {
DefaultCategoryDataset dataset = new DefaultCategoryDataset();
for(int i=1;i<data.length;i++){
try{
dataset.addValue(
Integer.valueOf(data[i][0]),
new String(data[i][1].getBytes("iso_8859-1"),"gb2312"),
new String(data[i][2].getBytes("iso_8859-1"),"gb2312")
);
}catch(Exception e){
}
} return dataset;
}
{
JFreeChart chart = ChartFactory.createLineChart(
new String(title.getBytes("iso_8859_1"),"gb2312"), // 图表标题
new String(vertical_label.getBytes("iso_8859_1"),"gb2312"), // 目录轴的显示标签
new String(horizontal_label.getBytes("iso_8859_1"),"gb2312"), // 数值轴的显示标签
this.getDataSet(), // 数据集
isVertical?PlotOrientation.VERTICAL:PlotOrientation.HORIZONTAL, // 图表方向:水平、垂直
true, // 是否显示图例(对于简单的柱状图必须是false)
false, // 是否生成工具
false // 是否生成URL链接
); // NOW DO SOME OPTIONAL CUSTOMISATION OF THE CHART...
StandardLegend legend = (StandardLegend) chart.getLegend();
legend.setDisplaySeriesShapes(true); chart.setBackgroundPaint(new Color(0xCC, 0xCC, 0xFF)); CategoryPlot plot = chart.getCategoryPlot(); // customise the domain axis...
CategoryAxis domainAxis = plot.getDomainAxis();
domainAxis.setVerticalCategoryLabels(true); // customise the range axis...
NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();
rangeAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());
rangeAxis.setAutoRangeIncludesZero(true);
rangeAxis.setUpperMargin(0.20);
rangeAxis.setLabelAngle(Math.PI / 2.0); // customise the renderer...
LineAndShapeRenderer renderer = (LineAndShapeRenderer) plot.getRenderer();
renderer.setDrawShapes(true); renderer.setSeriesStroke(
0, new BasicStroke(2.0f,
BasicStroke.CAP_ROUND,
BasicStroke.JOIN_ROUND,
1.0f,
new float[] {10.0f, 6.0f},
0.0f)
);
renderer.setSeriesStroke(
1, new BasicStroke(2.0f,
BasicStroke.CAP_ROUND,
BasicStroke.JOIN_ROUND,
1.0f,
new float[] {6.0f, 6.0f},
0.0f)
);
renderer.setSeriesStroke(
2, new BasicStroke(2.0f,
BasicStroke.CAP_ROUND,
BasicStroke.JOIN_ROUND,
1.0f,
new float[] {2.0f, 6.0f},
0.0f)
); renderer.setItemLabelsVisible(true);
renderer.setItemLabelTextAnchor(TextAnchor.BOTTOM_CENTER);
renderer.setItemLabelAnchor(ItemLabelAnchor.OUTSIDE12); return chart;
}
/**
*
* @return
*/
public CategoryDataset getDataSet() {
DefaultCategoryDataset dataset = new DefaultCategoryDataset();
for(int i=1;i<data.length;i++){
try{
dataset.addValue(
Integer.valueOf(data[i][0]),
new String(data[i][1].getBytes("iso_8859-1"),"gb2312"),
new String(data[i][2].getBytes("iso_8859-1"),"gb2312")
);
}catch(Exception e){
}
} return dataset;
}
解决方案 »
- 从集合取值放入另一个集合!
- 怎么在后台改变前台页面的样式
- getCurrentSession()和getSession()的区别?
- JavaScript 判断一个月有几个星期
- 请问一下谁用过dhcp4java框架开发过dhcp服务器,100分
- 局域网实现多用户聊天工具程序。。。。。俺太菜了。。。。急。。在线等(60)?
- 如何用JB写一个自动生成测试数据的通用模板
- 如何计算天数?
- 远程接口和本地接口中企业Bean的位置是透明和不透明是什么意思?
- 关于《j2ee Tutorial》中安装hello1.war web module的问题
- ★ 请教一个CMR的简单问题 ★
- 如何使用JTable中的数据
我的是用时间片来去的1-12月份的曲线图,下面语句报错不可用
在饼图和柱图是可以用的就可以显示比较清楚的中文,可是曲线
图的这个方法不可以用呢
CategoryPlot plot = chart.getCategoryPlot();