实例编程:JFreechart的一些用法Java认证考试

文章作者 100test 发表时间 2010:01:01 15:41:33
来源 100Test.Com百考试题网


  public abstract class AbstractStatistic implements Statistic {
  /**
  * 创建统计图形
  *
  * @param columnKeys
  * 关键字数组
  * @param data
  * 数据数组
  * @param title
  * 标题
  * @param session
  * @param rowKeys
  * 行关键字
  * @param showType
  * @return
  */
  public String createStatisticImg(String[] columnKeys, double[][] data,
  String title, HttpSession session, String[] rowKeys, String showType) {
  try {
  JFreeChart chart = null.
  if(showType.equals("1")){
  chart = createBarChart3D(data,columnKeys,rowKeys,title).
  }
  if(showType.equals("2")){
  chart = createLineChart(data,columnKeys,rowKeys,title).
  }
  if(showType.equals("3")){
  chart = createAreaChart(data,columnKeys,rowKeys,title).
  }
  if(showType.equals("4")){
  chart = createLineChart3D(data, columnKeys, rowKeys, title).
  }
  String filename = ServletUtilities.saveChartAsPNG(chart, 800, 450,
  null, session).
  return filename.
  } catch (IOException e) {
  // TODO Auto-generated catch block
  e.printStackTrace().
  }
  return "".
  }
  public JFreeChart createBarChart3D(double[][] data, String[] columnKeys, String[] rowKeys,String title){
  CategoryDataset dataset = DatasetUtilities.createCategoryDataset(
  rowKeys, columnKeys, data).
  JFreeChart chart = ChartFactory.createBarChart3D(title,// "分布与对比图"
  "", null, dataset, PlotOrientation.VERTICAL, true, false,
  false).
  chart.setBackgroundPaint(Color.WHITE).// 设置整张图片背景色
  CategoryPlot plot = chart.getCategoryPlot().
  plot.setBackgroundPaint(Color.gray).// 设置图形区域背景色
  // 设置是否显示垂直网格线
  plot.setDomainGridlinesVisible(true).
  // 设置是否显示水平网格线
  plot.setRangeGridlinesVisible(true).
  CategoryAxis domainAxis = plot.getDomainAxis().
  /*------设置X轴标题的倾斜程度----*/
  domainAxis.setCategoryLabelPositions(CategoryLabelPositions.STANDARD).
  domainAxis.setMaximumCategoryLabelLines(20).
  domainAxis.setTickLabelFont(new Font("黑体", Font.PLAIN, 12)).
  plot.setDomainAxis(domainAxis).
  ValueAxis rangeAxis = plot.getRangeAxis().
  // 设置最高的一个 Item 与图片顶端的距离
  rangeAxis.setUpperMargin(0.15).
  // 设置最低的一个 Item 与图片底端的距离
  rangeAxis.setLowerMargin(0.15).
  plot.setRangeAxis(rangeAxis).
  BarRenderer3D renderer = new BarRenderer3D().
  renderer.setBaseOutlinePaint(Color.BLACK).
  // 设置 Wall 的颜色
  renderer.setWallPaint(Color.gray).
  // 设置每种柱的颜色
  renderer.setSeriesPaint(0, new Color(255, 0, 0)).
  renderer.setSeriesPaint(1, new Color(0, 0, 255)).
  renderer.setSeriesPaint(2, new Color(0, 255, 0)).
  // 置每种柱的 Outline 颜色

相关文章


J2ME对html的unicode实体编码的转换Java认证考试
在Eclipse中去掉多余的UI组件的几个方法Java认证考试
5个常用Java代码混淆器助你保护你的代码Java认证考试
是什么让我们爱上JavascriptJava认证考试
实例编程:JFreechart的一些用法Java认证考试
junit单元测试使用方法Java认证考试
专家解读:Java终止函数深度分析Java认证考试
Java语言常见字符串注意事项Java认证考试
JAVA以前的学习笔记(四)Java认证考试
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛