以下是在jsp页面产生一个直方条形图,至于其他的图,只要改动下Action中产生图的代码即可,反正只要返回一个JFreeChart对象即可。。。。此方法就不需产生临时图,更加不存在还要记着该何时清除临时图片的问题。。。稍微修改下代码,则可是针对一次请求则动态产生图表,应该也就不存在网上大家讨论的并发问题了。。。,纯属个人见解,欢迎指正~~共同进步。。。。
1、搭建环境所需jar包
struts2基本包、jfreechart的两个基本包、加上struts2的struts2-jfreechart-plugin-2.2.1.1.jar即可
2、jsp页面代码
<img src="barChart.action"/>
3、struts.xml文件配置代码
<package name="chart" extends="jfreechart-default">
<action name="barChart" class="com.tianya.TestJFreeChart01">
<result type="chart">
<param name="width">200</param>
<param name="height">300</param>
</result>
</action>
</package>
4、Action类配置代码
public class TestJFreeChart01 extends ActionSupport{
private static final long serialVersionUID = 1L;
/**
* 此方法是产生直方行图表,并存到指定的目录下
* @return
*/
public JFreeChart getChart(){
DefaultCategoryDataset dataset = new DefaultCategoryDataset();
// 显示一行的所有列,一字型排开
dataset.addValue(1.0, "Row 1", "Column 1");
dataset.addValue(5.0, "Row 1", "Column 2");
dataset.addValue(3.0, "Row 1", "Column 3");
dataset.addValue(2.0, "Row 2", "Column 1");
dataset.addValue(3.0, "Row 2", "Column 2");
dataset.addValue(2.0, "Row 2", "Column 3");
JFreeChart chart = ChartFactory.createBarChart3D("BarChartDemo", // chart title
"横坐标值", // domain axis label
"竖坐标值", // range axis label
dataset, // data
PlotOrientation.VERTICAL, // 图显示的方向为水平显示
true, // include legend
true, // tooltips?
false // URLs?
);
chart.setBackgroundPaint(Color.yellow);
CategoryPlot plot = (CategoryPlot) chart.getPlot();
plot.setBackgroundPaint(Color.GREEN);
plot.setRangeGridlinePaint(Color.red); // 修改网格线的颜色
BarRenderer renderer = (BarRenderer) plot.getRenderer();
renderer.setItemMargin(0.0);
// 产生标签指示器,1代表列名,2代表数据值,3代表百分比
CategoryItemLabelGenerator generator = new StandardCategoryItemLabelGenerator("{2}", new DecimalFormat("0.0"));
renderer.setBaseItemLabelGenerator(generator);
//renderer.setBaseItemLabelsVisible(true); // 设置标签是否可见
// 单独指定显示系列的标签
renderer.setBaseItemLabelsVisible(null); // 清除所有系列的标志,必须得要
renderer.setSeriesItemLabelsVisible(0, true);
renderer.setSeriesItemLabelsVisible(1, false);
return chart;
}
}
分享到:
相关推荐
首先,整合Struts2和JFreeChart的首要步骤是确保在项目中引入JFreeChart和相关依赖。你需要在你的Maven或Gradle配置文件中添加JFreeChart的依赖,通常为以下形式: ```xml <groupId>org.jfree <artifactId>...
Struts2 框架与 JFreeChart 的整合允许开发者在 Web 应用程序中创建交互式的图表,如饼图、柱状图等。JFreeChart 是一个强大的 Java 图表库,可以生成高质量的静态图表,而 Struts2 则是用于构建 MVC(模型-视图-...
本实例将讲解如何在Struts2框架中整合JFreeChart,以实现动态生成图表的功能。 首先,确保你已经安装了Struts2框架,并且在项目中配置了Struts2的核心库。这通常包括添加struts2-core.jar到类路径中,并在web.xml中...
总的来说,Struts2与JFreeChart的整合是Java Web开发中常见的需求,它可以帮助我们创建交互式的、数据驱动的图表应用。通过理解JFreeChart的图表生成原理,掌握Struts2的Action和结果类型,以及熟悉Web应用的图像...
整合Struts2与JFreeChart,可以将JFreeChart生成的图表无缝地集成到Web应用中,为用户提供直观的数据展示。以下是如何实现这一整合的关键步骤和知识点: 1. **JFreeChart库的引入**:首先,你需要在项目的类路径下...
通过Struts 2整合JFreeChart,开发者可以在Web应用中直接展示由JFreeChart生成的图表,简化了图表的呈现过程。 11.1.1 下载和安装JFreeChart 要开始使用JFreeChart,首先需要访问其官方网站(http://www.jfree.org...
这个"struts2 + jfreechart demo"是一个实例,展示了如何在Struts2框架中集成并使用JFreeChart来创建动态图表。通过这个示例,我们可以学习到以下关键知识点: 1. **Struts2框架基础**:了解Struts2的核心概念,如...
至此,你已经成功地在Struts2应用中整合了JFreeChart,实现了动态生成并展示图表的功能。这个实例虽然简单,但对于理解和学习这两个库的结合使用是非常有帮助的。你可以根据实际需求,自定义图表样式,调整数据源,...
使用JFreeChart,必须调用在web-inf目录下导入jfreechart.jar,和jcommon.jar包 使用jfreechart-1.0.13.jar查看图表时中文乱码,降低jfreechart版本ok 显示图表时都可以在获取JfreeChart对象方法中使用3D方式 ...
本示例是关于如何在Struts2框架中整合JFreeChart,以便在Web应用中动态生成和展示图表。首先,我们需要理解Struts2的配置和包管理机制。Struts2的核心配置文件是`struts.xml`,它定义了Action、结果类型、拦截器等...
本示例教程将带你深入理解如何在Struts2框架下整合JFreeChart,以实现这些图表的动态生成。首先,你需要在项目中引入JFreeChart库,这通常通过在pom.xml文件中添加依赖或者下载jar包并将其添加到项目的类路径中来...
次实例是Struts2和JFreeChar的整合,下载后解压导入到ide中,输入http://localhost:8080/Struts2_JFreeChart/jfreechart/jfreeChart.action或者...
整合jFreeChart和Struts2可以让开发者在Web应用中轻松展示动态图表。整合过程包括在Struts2 Action中生成图表,然后通过JSP或FreeMarker模板将其渲染到页面上。同时,需要配置Struts2的Action结果类型,确保能够正确...
以下是一个简单的步骤来整合JFreeChart和Struts2: 1. **引入依赖**:首先,在项目中引入JFreeChart和Struts2的依赖库。这通常通过Maven或Gradle的配置来完成。 2. **创建图表**:在Action类中,创建一个方法来...
在Struts2中整合JFreeChart,可以方便地生成各种图表,如柱状图、饼图、线图等,用于数据可视化。JFreeChart是一个用Java编写的开源库,专门用于生成高质量的2D图表。 首先,我们需要理解Struts2的MVC设计模式。在...
在Struts1框架中整合JFreeChart,通常是为了在Web应用中动态生成图表。首先,你需要在Action类中创建JFreeChart对象,填充数据集,然后将其转换为JPEG或PNG等图片格式的byte数组。接着,你可以通过Struts的Action...
压缩包中的`JfreeDemo`可能是一个示例项目,包含了整合JFreeChart与Struts2的具体实现。它可能包括Action类、Excel数据读取代码、图表生成逻辑以及相应的视图展示。通过对这个示例的学习,开发者可以快速掌握如何在...
Struts2整合Jfreechart代码实例, 绘制各种图形。
### 知识点十四:整合jfreechart #### 14.1 jfreechart简介 jfreechart是一个Java图表库,可以用来绘制各种图表。 #### 14.2 整合流程 - **引入依赖**:将jfreechart的相关jar包加入到项目的lib目录中。 - **...
在将Struts2与JasperReport整合时,首先需要在Struts2项目中添加JasperReport的依赖库,这通常包括jasperreports、jcommon、jfreechart等。接下来,我们需要创建一个Action类,该类将负责处理报表生成的请求,并调用...