- 浏览: 1357074 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (453)
- Struts2 (4)
- Struts1 (16)
- Spring (9)
- Hibernate (5)
- AJAX (16)
- MS Server (9)
- Oracle (35)
- 测试技术 (5)
- 其他 (37)
- JSF (1)
- EJB (5)
- ASP.NET (9)
- iBATIS (5)
- Struts Spring Hibernate (2)
- HTML (12)
- Eclipse使用 (5)
- 设计模式 (5)
- JSP (32)
- 正则表达式 (2)
- 服务器 (12)
- Java基础 (48)
- MySQL (4)
- 面试 (22)
- UML (1)
- 数据结构 (3)
- Ant (2)
- 规范 (4)
- JavaScript (29)
- 软件使用及技巧 (25)
- PHP (1)
- DWR (3)
- FreeMarker (1)
- ExtJs (17)
- JFreeChart (9)
- Reports (2)
- JavaException (1)
- Java Mail (1)
- Flex (9)
- 异常 (12)
- Log4j (2)
- WebService (1)
- jQuery (1)
- Sybase (2)
- myeclipse_plugin (2)
- Linux (5)
- jbpm (2)
- SCM (1)
- mongoDB (1)
最新评论
-
lihua2008love:
<typeAlias alias="User& ...
IBATIS简单操作 -
lihua2008love:
...
关于项目框架设计的一点学习 -
c_jinglin:
我使用<OBJECT CLASSID="cls ...
这就是个静态页面通过js控制mscomm对某com设备进行访问的例子. -
zlbjava:
赞,用了还不错
java获取请求的ip地址,并解析ip所属地区 -
完美天龙:
cs842813290 写道楼主,我明白的地方:在链表已有N个 ...
JAVA实现双向链表
3)jsp+servlet+javabean方式
1. Create ChartViewer servlet
- public class ChartViewer extends HttpServlet {
- public void init() throws ServletException {
- }
- //Process the HTTP Get request
- public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
- // get the chart from session
- HttpSession session = request.getSession();
- BufferedImage chartImage = (BufferedImage) session.getAttribute("chartImage");
- // set the content type so the browser can see this as a picture
- response.setContentType("image/png");
- // send the picture
- PngEncoder encoder = new PngEncoder(chartImage, false, 0, 9);
- response.getOutputStream().write(encoder.pngEncode());
- }
- //Process the HTTP Post request
- public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
- doGet(request, response);
- }
- //Process the HTTP Put request
- public void doPut(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
- }
- //Clean up resources
- public void destroy() { }
- }
- public class ChartViewer extends HttpServlet { public void init() throws ServletException { } //Process the HTTP Get request public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // get the chart from session HttpSession session = request.getSession(); BufferedImage chartImage = (BufferedImage) session.getAttribute("chartImage"); // set the content type so the browser can see this as a picture response.setContentType("image/png"); // send the picture PngEncoder encoder = new PngEncoder(chartImage, false, 0, 9); response.getOutputStream().write(encoder.pngEncode()); } //Process the HTTP Post request public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } //Process the HTTP Put request public void doPut(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { } //Clean up resources public void destroy() { } }
public class ChartViewer extends HttpServlet { public void init() throws ServletException { } //Process the HTTP Get request public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // get the chart from session HttpSession session = request.getSession(); BufferedImage chartImage = (BufferedImage) session.getAttribute("chartImage"); // set the content type so the browser can see this as a picture response.setContentType("image/png"); // send the picture PngEncoder encoder = new PngEncoder(chartImage, false, 0, 9); response.getOutputStream().write(encoder.pngEncode()); } //Process the HTTP Post request public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } //Process the HTTP Put request public void doPut(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { } //Clean up resources public void destroy() { } }
2. Create a servlet map in web.xml
- <?xml version="1.0" encoding="UTF-8"?>
- <web-app>
- <servlet>
- <servlet-name>ChartViewer</servlet-name>
- <servlet-class>myapp.webwork.servlets.ChartViewer</servlet-class>
- </servlet>
- <servlet-mapping>
- <servlet-name>ChartViewer</servlet-name>
- <url-pattern>/servlet/ChartViewer</url-pattern>
- </servlet-mapping>
- </web-app>
- <?xml version="1.0" encoding="UTF-8"?> <web-app> <servlet> <servlet-name>ChartViewer</servlet-name> <servlet-class>myapp.webwork.servlets.ChartViewer</servlet-class> </servlet> <servlet-mapping> <servlet-name>ChartViewer</servlet-name> <url-pattern>/servlet/ChartViewer</url-pattern> </servlet-mapping> </web-app>
<?xml version="1.0" encoding="UTF-8"?> <web-app> <servlet> <servlet-name>ChartViewer</servlet-name> <servlet-class>myapp.webwork.servlets.ChartViewer</servlet-class> </servlet> <servlet-mapping> <servlet-name>ChartViewer</servlet-name> <url-pattern>/servlet/ChartViewer</url-pattern> </servlet-mapping> </web-app>
3. Create a chart in a java bean (Pie3DDemo.java)
- public class Pie3DDemo {
- private DefaultPieDataset getDataset() {
- // categories...
- String[] section = new String[] { "Jan","Feb","Mar","Apr","May","Jun", "Jul","Aug","Sep","Oct","Nov","Dec" };
- // data...
- double[] data = new double[section.length];
- for (int i = 0; i < data.length; i++) {
- data[i] = 10 + (Math.random() * 10);
- }
- // create the dataset...
- DefaultPieDataset dataset = new DefaultPieDataset();
- for (int i = 0; i < data.length; i++) {
- dataset.setValue(section[i], data[i]);
- }
- return dataset;
- }
- public String getChartViewer(HttpServletRequest request, HttpServletResponse response) {
- DefaultPieDataset dataset = getDataset();
- // create the chart...
- JFreeChart chart = ChartFactory.createPie3DChart(
- "Pie3D Chart Demo", // chart title
- dataset, // data
- true, // include legend
- true,
- false
- );
- // set the background color for the chart...
- chart.setBackgroundPaint(Color.cyan);
- PiePlot plot = (PiePlot) chart.getPlot();
- plot.setNoDataMessage("No data available");
- // set drilldown capability...
- plot.setURLGenerator(new StandardPieURLGenerator("Bar3DDemo.jsp","section"));
- plot.setLabelGenerator(null);
- // OPTIONAL CUSTOMISATION COMPLETED.
- ChartRenderingInfo info = null;
- HttpSession session = request.getSession();
- try {
- //Create RenderingInfo object
- response.setContentType("text/html");
- info = new ChartRenderingInfo(new StandardEntityCollection());
- BufferedImage chartImage = chart.createBufferedImage(640, 400, info);
- // putting chart as BufferedImage in session,
- // thus making it available for the image reading action Action.
- session.setAttribute("chartImage", chartImage);
- PrintWriter writer = new PrintWriter(response.getWriter());
- ChartUtilities.writeImageMap(writer, "imageMap", info);
- writer.flush();
- } catch (Exception e) { }
- String pathInfo = "http://";
- pathInfo += request.getServerName();
- int port = request.getServerPort();
- pathInfo += ":"+String.valueOf(port);
- pathInfo += request.getContextPath();
- String chartViewer = pathInfo + "/servlet/ChartViewer";
- return chartViewer;
- }
- public class Pie3DDemo { private DefaultPieDataset getDataset() { // categories... String[] section = new String[] { "Jan","Feb","Mar","Apr","May","Jun", "Jul","Aug","Sep","Oct","Nov","Dec" }; // data... double[] data = new double[section.length]; for (int i = 0; i < data.length; i++) { data[i] = 10 + (Math.random() * 10); } // create the dataset... DefaultPieDataset dataset = new DefaultPieDataset(); for (int i = 0; i < data.length; i++) { dataset.setValue(section[i], data[i]); } return dataset; } public String getChartViewer(HttpServletRequest request, HttpServletResponse response) { DefaultPieDataset dataset = getDataset(); // create the chart... <SPAN class=hilite1>JFreeChart</SPAN> chart = ChartFactory.createPie3DChart( "Pie3D Chart Demo", // chart title dataset, // data true, // include legend true, false ); // set the background color for the chart... chart.setBackgroundPaint(Color.cyan); PiePlot plot = (PiePlot) chart.getPlot(); plot.setNoDataMessage("No data available"); // set drilldown capability... plot.setURLGenerator(new StandardPieURLGenerator("Bar3DDemo.jsp","section")); plot.setLabelGenerator(null); // OPTIONAL CUSTOMISATION COMPLETED. ChartRenderingInfo info = null; HttpSession session = request.getSession(); try { //Create RenderingInfo object response.setContentType("text/html"); info = new ChartRenderingInfo(new StandardEntityCollection()); BufferedImage chartImage = chart.createBufferedImage(640, 400, info); // putting chart as BufferedImage in session, // thus making it available for the image reading action Action. session.setAttribute("chartImage", chartImage); PrintWriter writer = new PrintWriter(response.getWriter()); ChartUtilities.writeImageMap(writer, "imageMap", info); writer.flush(); } catch (Exception e) { } String pathInfo = "http://"; pathInfo += request.getServerName(); int port = request.getServerPort(); pathInfo += ":"+String.valueOf(port); pathInfo += request.getContextPath(); String chartViewer = pathInfo + "/servlet/ChartViewer"; return chartViewer; }
public class Pie3DDemo { private DefaultPieDataset getDataset() { // categories... String[] section = new String[] { "Jan","Feb","Mar","Apr","May","Jun", "Jul","Aug","Sep","Oct","Nov","Dec" }; // data... double[] data = new double[section.length]; for (int i = 0; i < data.length; i++) { data[i] = 10 + (Math.random() * 10); } // create the dataset... DefaultPieDataset dataset = new DefaultPieDataset(); for (int i = 0; i < data.length; i++) { dataset.setValue(section[i], data[i]); } return dataset; } public String getChartViewer(HttpServletRequest request, HttpServletResponse response) { DefaultPieDataset dataset = getDataset(); // create the chart... JFreeChart chart = ChartFactory.createPie3DChart( "Pie3D Chart Demo", // chart title dataset, // data true, // include legend true, false ); // set the background color for the chart... chart.setBackgroundPaint(Color.cyan); PiePlot plot = (PiePlot) chart.getPlot(); plot.setNoDataMessage("No data available"); // set drilldown capability... plot.setURLGenerator(new StandardPieURLGenerator("Bar3DDemo.jsp","section")); plot.setLabelGenerator(null); // OPTIONAL CUSTOMISATION COMPLETED. ChartRenderingInfo info = null; HttpSession session = request.getSession(); try { //Create RenderingInfo object response.setContentType("text/html"); info = new ChartRenderingInfo(new StandardEntityCollection()); BufferedImage chartImage = chart.createBufferedImage(640, 400, info); // putting chart as BufferedImage in session, // thus making it available for the image reading action Action. session.setAttribute("chartImage", chartImage); PrintWriter writer = new PrintWriter(response.getWriter()); ChartUtilities.writeImageMap(writer, "imageMap", info); writer.flush(); } catch (Exception e) { } String pathInfo = "http://"; pathInfo += request.getServerName(); int port = request.getServerPort(); pathInfo += ":"+String.valueOf(port); pathInfo += request.getContextPath(); String chartViewer = pathInfo + "/servlet/ChartViewer"; return chartViewer; }
6. 页面
- <html>
- <head>
- <title>Pie Chart Demo</title>
- </head>
- <jsp:useBeanid="myChart"scope="session"class="myapp.webwork.beans.Pie3DDemo" />
- <body>
- <h2>Pie Chart Demo</h2>
- <%String chartViewer = myChart.getChartViewer(request, response);%>
- <img src="<%=chartViewer%>" border=0 usemap="#imageMap">
- </body>
- </html>
- <html> <head> <title>Pie Chart Demo</title> </head> <jsp:useBeanid="myChart"scope="session"class="myapp.webwork.beans.Pie3DDemo" /> <body> <h2>Pie Chart Demo</h2> <%String chartViewer = myChart.getChartViewer(request, response);%> <img src="<%=chartViewer%>" border=0 usemap="#imageMap"> </body> </html>
<html> <head> <title>Pie Chart Demo</title> </head> <jsp:useBeanid="myChart"scope="session"class="myapp.webwork.beans.Pie3DDemo" /> <body> <h2>Pie Chart Demo</h2> <%String chartViewer = myChart.getChartViewer(request, response);%> <img src="<%=chartViewer%>" border=0 usemap="#imageMap"> </body> </html>
4)采用工具类ChartUtil和DisplayChart(jfreechart的servlet)输出
我用了上面的几个方法输出图片,发现页面里只能输出一个图片,
不过下面的方法可以输出多个图片,而且是几种方式中最简单的一个,推荐使用。
这种方式和上面的三种比较类似,是将javabean里的生成图片的方法写的一个工具类ChartUtil里面。
1 .添加工具类ChartUtil
public class ChartUtil {
// 产生时间序列图,返回图片名称
- public static String generatePieChart(DefaultPieDataset dataset,String title,int width,int height,HttpSession session, PrintWriter pw) {
- String filename = null;
- try {
- if (session != null)
- {
- ChartDeleter deleter = (ChartDeleter)session.getAttribute("JFreeChart_Deleter");
- session.removeAttribute("JFreeChart_Deleter");
- session.setAttribute("JFreeChart_Deleter", deleter);
- }
- JFreeChart chart = ChartFactory.createPieChart3D(
- title, // chart title
- dataset, // data
- true, // include legend
- true,
- false );
- // Write the chart image to the temporary directory
- ChartRenderingInfo info = new ChartRenderingInfo(new StandardEntityCollection());
- //If the last parameter is null, the chart is a "one time"-chart and will be deleted after the first serving.
- //If the last parameter is a session object, the chart remains until session time out.
- filename = ServletUtilities.saveChartAsPNG(chart, width, height, info, session);
- // Write the image map to the PrintWriter
- ChartUtilities.writeImageMap(pw, filename, info,true);
- pw.flush();
- } catch (Exception e) {
- System.out.println("Exception - " + e.toString());
- e.printStackTrace(System.out);
- filename = "picture_error.png"; }
- return filename;
- }
- }
- public static String generatePieChart(DefaultPieDataset dataset,String title,int width,int height,HttpSession session, PrintWriter pw) { String filename = null; try { if (session != null) { ChartDeleter deleter = (ChartDeleter)session.getAttribute("<SPAN class=hilite1>JFreeChart</SPAN>_Deleter"); session.removeAttribute("<SPAN class=hilite1>JFreeChart</SPAN>_Deleter"); session.setAttribute("<SPAN class=hilite1>JFreeChart</SPAN>_Deleter", deleter); } <SPAN class=hilite1>JFreeChart</SPAN> chart = ChartFactory.createPieChart3D( title, // chart title dataset, // data true, // include legend true, false ); // Write the chart image to the temporary directory ChartRenderingInfo info = new ChartRenderingInfo(new StandardEntityCollection()); //If the last parameter is null, the chart is a "one time"-chart and will be deleted after the first serving. //If the last parameter is a session object, the chart remains until session time out. filename = ServletUtilities.saveChartAsPNG(chart, width, height, info, session); // Write the image map to the PrintWriter ChartUtilities.writeImageMap(pw, filename, info,true); pw.flush(); } catch (Exception e) { System.out.println("Exception - " + e.toString()); e.printStackTrace(System.out); filename = "picture_error.png"; } return filename; } }
public static String generatePieChart(DefaultPieDataset dataset,String title,int width,int height,HttpSession session, PrintWriter pw) { String filename = null; try { if (session != null) { ChartDeleter deleter = (ChartDeleter)session.getAttribute("JFreeChart_Deleter"); session.removeAttribute("JFreeChart_Deleter"); session.setAttribute("JFreeChart_Deleter", deleter); } JFreeChart chart = ChartFactory.createPieChart3D( title, // chart title dataset, // data true, // include legend true, false ); // Write the chart image to the temporary directory ChartRenderingInfo info = new ChartRenderingInfo(new StandardEntityCollection()); //If the last parameter is null, the chart is a "one time"-chart and will be deleted after the first serving. //If the last parameter is a session object, the chart remains until session time out. filename = ServletUtilities.saveChartAsPNG(chart, width, height, info, session); // Write the image map to the PrintWriter ChartUtilities.writeImageMap(pw, filename, info,true); pw.flush(); } catch (Exception e) { System.out.println("Exception - " + e.toString()); e.printStackTrace(System.out); filename = "picture_error.png"; } return filename; } }
2、在action里统计数据,设置好数据集dataset。传到页面
3、 在页面里取出
DefaultPieDataset piedataset=(DefaultPieDataset)request.getAttribute("piedataset");
// 用ChartUtil工具类产生图片
- String p = ChartUtil.generatePieChart(piedataset," 项目收支线图",500,300,null, new PrintWriter(out));
- String p1 = request.getContextPath() + "/servlet/DisplayChart?filename=" + p;
- String p = ChartUtil.generatePieChart(piedataset," 项目收支线图",500,300,null, new PrintWriter(out)); String p1 = request.getContextPath() + "/servlet/DisplayChart?filename=" + p;
String p = ChartUtil.generatePieChart(piedataset," 项目收支线图",500,300,null, new PrintWriter(out)); String p1 = request.getContextPath() + "/servlet/DisplayChart?filename=" + p;
通过以下方式输出
- <td><img src="<%= p1 %>" width=500 height=300 border=0 usemap="#<%= p %>"></td>
<td><img src="<%= p1 %>" width=500 height=300 border=0 usemap="#<%= p %>"></td>
4、在web.xml中添加
- <servlet>
- <servlet-name>DisplayChart</servlet-name>
- <servlet-class>org.jfree.chart.servlet.DisplayChart</servlet-class>
- </servlet>
- <servlet-mapping>
- <servlet-name>DisplayChart</servlet-name>
- <url-pattern>/servlet/DisplayChart</url-pattern>
- </servlet-mapping>
- <servlet> <servlet-name>DisplayChart</servlet-name> <servlet-class>org.jfree.chart.servlet.DisplayChart</servlet-class> </servlet> <servlet-mapping> <servlet-name>DisplayChart</servlet-name> <url-pattern>/servlet/DisplayChart</url-pattern> </servlet-mapping>
<servlet> <servlet-name>DisplayChart</servlet-name> <servlet-class>org.jfree.chart.servlet.DisplayChart</servlet-class> </servlet> <servlet-mapping> <servlet-name>DisplayChart</servlet-name> <url-pattern>/servlet/DisplayChart</url-pattern> </servlet-mapping>
5) ApplicationFrame 方式
- public class PieChartDemo1 extends ApplicationFrame {
- public PieChartDemo1(String title) {
- super(title);
- setContentPane(createDemoPanel());
- }
- private static JFreeChart createChart(PieDataset dataset) {
- JFreeChart chart = ChartFactory.createPieChart(
- .......
- return chart;
- }
- public static JPanel createDemoPanel() {
- JFreeChart chart = createChart(createDataset());
- return new ChartPanel(chart);
- }
- public static void main(String[] args) {
- PieChartDemo1 demo = new PieChartDemo1("Pie Chart Demo 1");
- demo.pack();
- RefineryUtilities.centerFrameOnScreen(demo);
- demo.setVisible(true);
- }
- }
- public class PieChartDemo1 extends ApplicationFrame { public PieChartDemo1(String title) { super(title); setContentPane(createDemoPanel()); } private static <SPAN class=hilite1>JFreeChart</SPAN> createChart(PieDataset dataset) { <SPAN class=hilite1>JFreeChart</SPAN> chart = ChartFactory.createPieChart( ....... return chart; } public static JPanel createDemoPanel() { <SPAN class=hilite1>JFreeChart</SPAN> chart = createChart(createDataset()); return new ChartPanel(chart); } public static void main(String[] args) { PieChartDemo1 demo = new PieChartDemo1("Pie Chart Demo 1"); demo.pack(); RefineryUtilities.centerFrameOnScreen(demo); demo.setVisible(true); } }
public class PieChartDemo1 extends ApplicationFrame { public PieChartDemo1(String title) { super(title); setContentPane(createDemoPanel()); } private static JFreeChart createChart(PieDataset dataset) { JFreeChart chart = ChartFactory.createPieChart( ....... return chart; } public static JPanel createDemoPanel() { JFreeChart chart = createChart(createDataset()); return new ChartPanel(chart); } public static void main(String[] args) { PieChartDemo1 demo = new PieChartDemo1("Pie Chart Demo 1"); demo.pack(); RefineryUtilities.centerFrameOnScreen(demo); demo.setVisible(true); } }
六. 可参考资料与网址
官方网站
http://www.jfree.org/jfreechart/index.html
官方论坛
http://www.jfree.org/phpBB2/index.php
API 文档
http://www.jfree.org/jfreechart/api/gjdoc/index.html
中文API
http://blog.sina.com.cn/u/405da78d010000ap
发表评论
-
Cewolf+JFreeChart之报表代码实例大全(附效果图)
2009-08-09 13:00 4969报表代码实例大全: 本实例采用Cewolf+JFreeChar ... -
使用JFreeChart生成带交互功能的统计图例
2008-07-03 22:05 3129a.jsp 代码: <%@ page language= ... -
使用JFreeChart生成时间顺序图实例(生成图片)
2008-07-03 22:03 2134package com.lhhc.jfreechart.tes ... -
使用JFreeChart生成复杂柱状图实例(生成图片)
2008-07-03 22:02 2506package com.lhhc.jfreechart.tes ... -
使用JFreeChart生成柱状图实例(生成图片)
2008-07-03 22:01 2969package com.lhhc.jfreechart.tes ... -
使用JFreeChart生成饼图实例(生成图片)
2008-07-03 22:00 2897package com.lhhc.jfreechart.tes ... -
Struts2+JFreeChart
2008-07-03 21:59 4390下面以边帖图片和代码的方式来讲解Struts2与JFreeCh ... -
JfreeChart学习总结(1)
2008-07-03 21:38 3472自己最近学习了JfreeChart的使用,觉得这个冬冬的功能非 ...
相关推荐
JfreeChart学习总结JfreeChart学习总结
### JFreeChart学习总结 #### 一、为什么学习JFreeChart? 随着互联网技术的飞速发展,越来越多的应用程序转向了Web平台。这不仅包括传统的静态网页,也涵盖了那些需要复杂数据展示的应用,如报表系统。然而,从...
**JFreeChart学习总结** JFreeChart是一款强大的Java图表库,它允许开发者在Java应用程序、Swing组件或Web应用中创建各种复杂的图表。这个库涵盖了多种图表类型,包括折线图、柱状图、饼图、散点图、甘特图等,能够...
总结而言,JFreeChart 不仅是一个功能强大的图表生成库,而且拥有活跃的社区支持,提供了详尽的文档和示例代码。无论是初学者还是有经验的开发者,都能够通过本文档快速上手并熟练掌握 JFreeChart 的使用技巧。
**JFreeChart学习指南** JFreeChart是一款强大的Java图表库,它允许开发者在应用程序、Swing组件、Applet或Web应用中创建各种复杂的图表。这个库涵盖了多种图表类型,包括柱状图、饼图、线图、散点图、甘特图等,...
### JFreeChart使用总结 #### 一、JFreeChart简介 JFreeChart是一个强大的Java图表绘制库,由JFree组织开发并维护。该库提供了一系列丰富的API,支持开发者创建多种类型的图表,包括但不限于饼图、柱状图、线图、...
如果你还在java EE 门口徘徊,常用开发组件介绍>将是你最好的向导;如果你已经入门了,那恭喜你,你将更容易从全局上把握自己的学习方向...
在本篇“JFreeChart学习笔记3-简单Line图形创建”中,我们将深入探讨如何使用JFreeChart库在Java环境中创建基本的线性图表。JFreeChart是一个强大的、开源的Java图表库,它允许开发者轻松地生成各种类型的图表,包括...
**JFreeChart 操作总结** JFreeChart 是一个强大的 Java 图表库,它允许开发者创建各种复杂的图表,如饼图、柱状图、...在实际开发中,根据具体需求进行深入学习和定制,JFreeChart 将成为你强大的数据可视化工具。
总结来说,JFreeChart是一个强大且灵活的Java图表库,可以帮助开发者快速创建各种图表。通过学习和实践`BarChart.java`和`BarChart3D.java`,你可以掌握创建2D和3D条形图的基础,并在此基础上进行更复杂的定制和扩展...
**jFreeChart学习资源概述** jFreeChart是一个强大的开源Java库,用于生成高质量的图表,包括线图、柱状图、饼图、散点图、甘特图等多种类型的图表。这个资源包包含了学习jFreeChart所需的所有关键元素,包括jar...
总结来说,JFreeChart是Java开发中不可或缺的工具,它提供了丰富的图表库和强大的定制能力,无论是在企业级应用还是个人项目中,都能展现出强大的图形处理能力。通过深入学习和实践,开发者可以利用JFreeChart轻松...
**"jfreechart 总结.txt" 和 "JFreeChart.txt"** 文件可能包含了JFreeChart的使用总结、技巧、注意事项或者其他开发者的经验分享,对于学习和使用JFreeChart来说是非常宝贵的参考资料。 总的来说,JFreeChart是一个...
2. 易用性:FusionCharts提供了一套完整的API和示例代码,使得开发者能够快速上手,而jFreeChart的学习曲线相对较陡峭。 3. 平台兼容性:FusionCharts基于Web技术,因此可以跨平台运行,适用于移动设备和桌面系统,...
**JFreeChart是一种广泛使用的Java...总结来说,"JfreeChart各种图形案例"这个资源是一份宝贵的开发工具,无论你是初学者还是有经验的开发者,都可以从中受益,快速掌握JFreeChart的使用技巧,提升你的数据可视化能力。
《JFreeChart学习指南——深度探索数据可视化》 在数据科学和数据分析领域,有效的数据可视化是至关重要的。JFreeChart,作为一个强大的Java图表库,为我们提供了丰富的图表类型,包括柱状图、饼状图和曲线图等,...
**JFreeChart 代码总结** JFreeChart 是一个流行的 Java 库,用于创建高质量的图表,包括线图、柱状图、饼图、散点图等。它在各种应用程序中被广泛使用,如报告、仪表板和数据分析工具。这篇博客文章([链接]...