`

jcharts开发

阅读更多

java源代码:

public class BarChartAction extends DIBaseAction {

 public String execute() throws Exception {
 
 
   
  
   
     
  
    
         
       //5.0图形的宽和 高
       int width = 800;
          int height = 360;
          //4.0图例的属性对象
          LegendProperties legendProperties;
          legendProperties = new LegendProperties();
      
       /***************************************************************************************************************/
       //3.0图形的XY轴的属性对象
        AxisProperties axisProperties;
        axisProperties = new AxisProperties( false );
       
       //图表横坐标和纵坐标范围的字体,大小,颜色设置对象
    ChartFont axisScaleFont = new ChartFont( new Font( "Georgia Negreta cursiva", Font.PLAIN, 13 ), Color.black );
    
    axisProperties.getXAxisProperties().setScaleChartFont( axisScaleFont );
    axisProperties.getYAxisProperties().setScaleChartFont( axisScaleFont );
     //Bar图形的横坐标和纵坐标的标题字体和颜色 ,大小的设置对象
    ChartFont axisTitleFont = new ChartFont( new Font( "Arial Narrow", Font.PLAIN, 14 ), Color.black );
    
    axisProperties.getXAxisProperties().setTitleChartFont( axisTitleFont );
    
    axisProperties.getYAxisProperties().setTitleChartFont( axisTitleFont );
    /***************************************************************************************************************/
    
    DataAxisProperties dataAxisProperties = (DataAxisProperties) axisProperties.getYAxisProperties();

    try
    {
     //设置用户定义的纵轴纵坐标的 间隔范围
     dataAxisProperties.setUserDefinedScale( -3000, 3000 );
    }
    catch( PropertyException propertyException )
    {
     propertyException.printStackTrace();
    }
      
    dataAxisProperties.setRoundToNearest(2);
       
    /***************************************************************************************************************/
     //2.0生成图像的属性对象
        ChartProperties chartProperties;
       chartProperties = new ChartProperties();
    //设置图形标题的字体,颜色,大小
    ChartFont titleFont = new ChartFont( new Font( "Georgia Negreta cursiva", Font.PLAIN, 14 ), Color.black );
    
    chartProperties.setTitleFont( titleFont );
    /***************************************************************************************************************/
    
    /***************************************************************************************************************/
       //Bar图形的属性类
       BarChartProperties barChartProperties;
    barChartProperties = new BarChartProperties();

    ValueLabelRenderer valueLabelRenderer = new ValueLabelRenderer( false, false, true, -1 );
    
    valueLabelRenderer.setValueLabelPosition( ValueLabelPosition.ON_TOP );
    
    //是否设置显示的纵坐标标签垂直,true为是,flase为水平
    valueLabelRenderer.useVerticalLabels( false );
    
    barChartProperties.addPostRenderEventListener( valueLabelRenderer );
    /***************************************************************************************************************/
    
    try
  {
     //设置横坐标标签
   String[] xAxisLabels = {"1995", "1996", "1997", "1998", "1999", "2000", "2001", "2002", "2003", "2004"};
   //设置横坐标的单位
   String xAxisTitle = "Years";
   //设置纵坐标的标题
   String yAxisTitle = "Problems";
   //设置图形的标题
   String title = "Micro$oft At Work";
   /***************************************************************************************************************/
     
   //1.0图形所需要的数据对象
   IAxisDataSeries dataSeries = new DataSeries( xAxisLabels, xAxisTitle, yAxisTitle, title );
   
   
            //设置条形数据
   double[][] data = new double[][]{{1500, 6880, 4510, 2600, -1200, -1580, 7000, 4555, 4000, 6120}};
   //条形区域 形示的标签
   String[] legendLabels = {"Bugs"};
   
   //条形区域绘制的颜色设置对象
   Paint[] paints = new Paint[]{Color.yellow};
   
   dataSeries.addIAxisPlotDataSet( new AxisChartDataSet( data, legendLabels, paints, ChartType.BAR,  barChartProperties ) );
   
   /***************************************************************************************************************/
     
            //产生一个 chart对象
   AxisChart axisChart = new AxisChart( dataSeries,  chartProperties, axisProperties,  legendProperties,  width,  height );
   //输出设置好的chart图形
   ServletEncoderHelper.encodeJPEG13( axisChart, 1.0f, response );
  }
  catch( Throwable throwable )
  {
 
   throwable.printStackTrace();
  }
   return SUCCESS;
  }
}

JChartsJFreeChart比较

 

 

JFreeChart

    官方网址: http://www.jfree.org/jfreechart/
功能比较完善
, 文档需要花钱购买。
最新版本1.0.10(20086), 活跃度较高。
基础图形库, 适用于各种Java环境。

      JFreeChart显示效果好一些。

      JFreeChart提供了对更多种常用图形的支持。

      JFreeChart适合于对图形需求较多并且要求图形具有较强的扩展性的项目。

JCharts

官方网址: http://jcharts.sourceforge.net/
功能比较完善
, 有在线文档, 但是文档不是很全面。
最新文档版 0.7.0 (200303)
最后一次更新在2004,1.0.0 - alpha, 活跃度较低
.
基础图形库, 适用于各种Java环境.

       JCharts显示效果差一些。

       JCharts支持的图形太少。

       JCharts更适用于相对小型的项目。

 

 

分享到:
评论

相关推荐

    Web报表开发技术-jCharts开发技术实例

    总之,jCharts是一个强大的Web报表开发工具,它简化了数据可视化的复杂性,使得开发者可以快速构建出交互性强、视觉效果好的报表。通过学习和实践这个实例,你将掌握如何在J2EE项目中有效利用jCharts,从而提升你的...

    jCharts web报表开发实例

    在"jCharts开发全攻略"这份文档中,你将找到更深入的jCharts使用教程,涵盖高级图表定制、动画效果、多系列数据处理、数据动态更新等方面的内容。通过学习和实践,你将能够利用jCharts创建出各种复杂的Web报表,满足...

    JCharts通用报表

    通过以上分析,我们可以看出JCharts通用报表为Java开发人员提供了一个强大而灵活的报表生成工具,它简化了报表开发过程,提高了工作效率,同时也提供了良好的用户体验。在实际应用中,开发者可以根据项目需求对...

    jcharts jar lib 源码 demo

    在Java开发中,数据可视化是一个重要的环节,jCharts作为一款开源的Java图表库,为开发者提供了丰富的图表绘制功能。本篇文章将深入探讨jCharts库,包括其源码解析、Demo演示以及如何将其应用到实际项目中。 ...

    hightcharts+jcharts+fushioncharts等各种报表的模板

    在开发过程中,拥有这些模板和API示例将大大简化工作流程,加快开发速度。你可以根据项目需求选择合适的图表库,并通过模板快速构建出符合风格的报表。这些库通常都支持动态数据绑定,使得数据更新时图表能实时反映...

    krysalis-jCharts-1.0.0-alpha-1

    6. **兼容性**:尽管是较早的版本,但krysalis-jCharts通常能与主流的Web开发框架(如Spring、Struts等)和浏览器(当时流行的Firefox、IE等)兼容。 7. **文档和示例**:虽然没有提及具体文档,但通常 alpha 版本...

    jChart help

    这个“jChart help”压缩包包含的资源将帮助你了解如何安装并有效地利用jCharts进行数据可视化开发。下面,我们将深入探讨jCharts的基本概念、安装步骤、使用方法以及其主要特性。 ### 1. jCharts基本概念 jCharts...

    java开发JFreeChart相关包

    相较于其他Java图表库如JCharts、Chart.js等,JFreeChart提供了更丰富的图表类型和自定义选项,但可能对新手来说学习曲线相对较陡峭。 6. **应用场景** JFreeChart广泛应用于数据分析、报告生成、仪表盘、科学...

    精通Java Web动态图表编程 配套源代码

    3. **图表库**:Java Web中常见的图表库有JFreeChart、JCharts、Google Charts API等。这些库提供了一系列接口和方法,用于创建不同类型的图表,如折线图、柱状图、饼图、散点图等。通过调用这些库的API,开发者可以...

    贯通开源WEB图形与报表技术全集—part1

    它还提供了强大的模板设计功能,允许开发人员通过JasperReport的报告定义语言JRXML来定义报表结构。 最后,OpenReports是基于Web的报表和分析工具,它基于JasperReports并扩展了其功能,提供了一个友好的Web界面供...

    原创-java岗位技能与职业规划

    - **图表库**: 包括jFreeChart,jCharts等,用于生成可视化图表。 - **工作流引擎**: jbpm,osWorkflow,Shark等。 - **权限安全**: Acegi Security,Java Security等。 - **日志框架**: log4j,slf4j,commons ...

    java 报表生成 工具介绍

    5. **jCharts**:jCharts是一个纯Java的图表生成工具,可输出多种类型的图表,并且特别适合通过Servlets在Web应用中展示图表。 6. **Cewolf**:Cewolf是一个用于在Web应用中嵌入复杂图形图表的Servlet/JSP组件。它...

    92个经典开源项目集锦

    8. **Cofax, OpenCMS, JasperReports, DataVision, JFreeReport, JCharts, iText, Apache FOP**:这些是内容管理和报表生成工具,如 JasperReports 可以创建复杂的报表,iText 则用于 PDF 文档处理,OpenCMS 提供了...

    2step: web application framework-开源

    2step是一个用Java编写的开发框架,用于开发完整的Web应用程序(包括Web服务)。 作为Servlet框架,具有访问控制,日志记录,I18N,数据库访问,部署,XML / XSL等功能,并使用Jetty,FOP和jCharts。

    Jchart自己封装的

    然而,这些内置库可能无法满足复杂或定制化的图表需求,因此开发者经常选择第三方库,如JFreeChart、JCharts或`Jchart`这样的自定义封装库。这些库通常提供了更多的图表类型、自定义选项和性能优化。 2. **Jchart的...

    JasperReport 学习之路

    10. **JCharts**:类似Chart示例,但使用另一个开源API jCharts生成图形。 11. **Landscape**:展示横向报表的设计方法。 12. **NoPageBreak**:演示如何在浏览器中以不分页的形式打印报表内容。 13. **NoReport*...

    jasperreport ant运行以及启动hsqldb服务

    ### JasperReports与Ant集成及HSQLDB服务启动详解 #### 一、JasperReports简介 ...这些技能对于开发人员来说非常实用,尤其是在需要生成复杂报表或集成数据库服务时。希望本文能为读者提供有价值的信息和指导。

Global site tag (gtag.js) - Google Analytics