JavaWeb ChartDirector 图表插件-web图表开发-ChartDirector资料

时间:2022-08-24 13:51:14
最近在学习Web 的图表开发,用到了JfreeChart和ChartDirector 。JfreeChart大家应该都很了解了,免费开源的,教程也很多。这里就不列举出来了,今天跟大家分享一些ChartDirector的东东!
一、相关资源
目前我的包是:ChartDirector.jar 版本:The latest version of ChartDirector is 5.1.1.。官方网站:http://www.advsofteng.com 。如下截图。可以直接下载。
 JavaWeb <wbr>ChartDirector <wbr>图表插件-web图表开发-ChartDirector资料


官方的论坛可以提问,如果英文还可以的话直接在上面提问,回复挺及时的。ChartDirector.jar 正式版本是要收费的。从网上找到的使用和破解资源有:
ChartDirector破解及中文问题解决
使用ChartDirector小记
ChartDirector:http://pwwang.com/tag/chartdirector这个博客写了好多篇教程,都是很基础的东西。
Web图表控件ChartDirector教程(上):都是官网的文档,照着这些教程就可以做很多图表了。
图表控件ChartDirector使用教程:如何画饼状图
图表控件ChartDirector使用教程:走势图绘制方法
图表控件ChartDirector使用教程:绘制仪表盘(含源码)
图表控件ChartDirector使用教程:坐标设置详解(代码示例)
图表控件ChartDirector使用教程:绘制证券走势图的技巧总结
图表控件ChartDirector使用教程:如何画线状图
图表控件ChartDirector使用教程:在JSP中画统计图(附源码)
Web图表控件ChartDirector教程下篇:
图表控件ChartDirector使用教程:绘制Soft Bar Shading效果图表
图表控件ChartDirector使用教程:缺失数据点的表现方法
图表控件ChartDirector使用教程:创建不同阴影效果的2D环状图
图表控件ChartDirector使用教程:创建水平双向条形图
图表控件ChartDirector使用教程:创建数据点
图表控件ChartDirector使用教程:极线图表创建(附源码)
图表控件ChartDirector使用教程:创建极地散点图
二、破解--去掉黄色注册标志
破解--去掉黄色注册标志:
http://www.javayou.com/showlog.jspe?log_id=414
1.將chartdir.lic放在\WEB-INF\classes
2.或在程式裡加Chart.setLicenseCode("ME7YWN3DBFQU2C7MB3971677");
3.序號大家可以參考,不要照抄,出事不負責^_^
4.以上適用4.0以上java版本
三、中文问题(JSP)
中文问题(JSP):
1. <<A href="mailto:%@page">%@page contentType="text/html; charset=GB2312"%>
2. <<A href="mailto:%@page">%@page import="ChartDirector.*" %>
3. PieChart c = new PieChart(500, 230);
c.setPieSize(250, 120, 100);
c.setDefaultFonts("宋体","Bold");
c.addTitle("<*font=宋体,size=20*>====中文标题====<*/*>");
更多相关网站资源:
官方网址:www.advsofteng.com
破解下载:http://www.blogjava.net/Files/galaxyp/ChartDirector.rar
JAVA 图表组件 ChartDirector
JFreeChart(http://www.jfree.org/jfreechart/index.php)
ChartDirector(http://www.advsofteng.com)
 
JFreeChart是开源的,但是文档要花钱买。
ChartDirector是商业的,但是我找到了破解序列号:)
JFreeChart生成的图感觉不是很清晰,虽然有字体的解决办法,但仍然存在问题。
ChartDirector生成的图很清楚,也存在中文的问题,但比较容易解决。
在两者的选择之中,我还是选择了后者。。。
 
附ChartDirector4.0.1破解方法:【注:网上摘录,本人没有调试过!】
1.做一个内容为ME7YWN3DBFQU2C7MB3971677的文件,保存为chartdir.lic放到/WEB-INF/classes/chartdir.lic;
2.重启WEB容器;
 
ChartDirector的中文问题,以下内容为摘录:
 第一种解决方法。有两步:
 1: 传递给ChartDirector的中文必须转成8859_1编码;
 2: 必须设置中文的字体。
结合这两个步骤并可解决中文问题。
第二种解决方法。中文问题很完美!!
1:在网页头上加上:《%@ page contentType="text/html; charset=GBK" %
2:设置字体:c.setDefaultFonts("simhei.ttc","simhei.ttf");
第三种解决方法。字体的设置可以参照下面的代码
TextBox title = c.setTitle("访问人次");
title.setFontStyle("System");
title.setFontSize(9);
第四种解决方法。
在Linux下,只要保证你所设的字体在系统的字体包里有就应该没问题了。
simhei.ttf 和 simfang.ttf等等,我设的就是后面的,但要保证系统字体包中要有你所设的字体(你可以下载字体到系统字体包中。实在不行就把win下面的字体copy到linux中)
 
四、【例子1】简单的ChartDirector图表生成
ChartDirector是一款web图形报表工具。。。
       如果下载的是war包直接放在web服务器上就行,一般都会自动释放然后打开浏览器输入http://server_name/application_path就可以看见了
      要是想在自己工程里面使用首先要复制ChartDirector.jar到web-inf的lib目录下,还要复制getchar.jsp文件到工程,要不这样,就画不出图来呵呵,如果试用了servlet的话web.xml文件还得配置,大概就这么几点要注意的。。您要是知道更多的欢迎补充。。。
 
第一个web文件:mytest1.jsp
代码
第二一个文件:getchart.jsp
代码
 
第三:web.xml设置
?xml version="1.0" encoding="UTF-8"?>
"http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
  t_table2d
 
   
    GetSessionImage
    ChartDirector.GetSessionImage
 
 
 
    GetSessionImage
    *.chart
 
 
    mytest1.jsp
 
 
运行结果:
 
JavaWeb <wbr>ChartDirector <wbr>图表插件-web图表开发-ChartDirector资料


JavaWeb ChartDirector 图表插件-web图表开发-ChartDirector资料
 
五、【例子 2】 破解、支持中文
1、首先要复制ChartDirector.jar破解的版本(网上有,自己可以找到)到web-inf的lib目录下,其它不变!
2、配置web.xml 。 一样的!不需要动。
 
3、两个文件 getchart.jsp(如果复制了,这个就不要建了)和index.jsp
文件一:getchart.jsp
同前!一样的!不需要动。
文件二:index.jsp
 
%@ page language="java" contentType="text/html; charset=UTF-8"  pageEncoding="UTF-8" import="ChartDirector.*;"%>
% request.setCharacterEncoding("UTF-8");
//以两个系列数据为例
double[] data = {185, 156, 179.5, 211, 123};
double[] data1 = {55, 76, 34.5, 88, 43};
//数据列名
String[] labels = {"一月", "二月", "三月", "四月", "五月"}; 
//生成图片大小 250 x 250 
XYChart c = new XYChart(550, 350);
 Chart.setLicenseCode("ME7YWN3DBFQU2C7MB3971677");
  //图标题
c.addTitle("第一个图","",15);
 //支持中文
c.setDefaultFonts("SIMSUN.TTC","simhei.ttf");
//图表在图片中的定位及区域大小
 c.setPlotArea(30, 40, 400, 250);
//=========================
//加入单个数据
 //BarLayer layer = c.addBarLayer(data,0xff3456,"我的测试");
//=========================
//加入多个BAR数据(多个datasets)
 BarLayer layer = c.addBarLayer2(Chart.Side, 3);
layer.addDataSet(data, 0xff8080, "我测试1");
 layer.addDataSet(data1, 0x008080, "你也测2");
 //3d化
layer.set3D();
//设置BAR边框形式
layer.setBarShape(0);
//bar宽度
layer.setBarWidth(50);
 //设置BAR边框颜色
 //layer.setBorderColor(0xff9999);
 //图例形式
layer.setLegend(1);
//每个BAR顶部加入数据显示
layer.setAggregateLabelStyle();
//设置BAR底部的名称显示
TextBox t = c.xAxis().setLabels(labels);
//名称文字大小
 t.setFontSize(9);
 //加图例
//LegendBox legend = c.addLegend(260, 120,true);
 //legend.addKey("钱财",0xff8080);
 //图例位置
c.addLegend(450, 120,true);
  //output the chart
String chart1URL = c.makeSession(request, "chart1");
//include tool tip for the chart
 
 
 
4、布置运行
 以上就是ChartDirector的使用过程,由于效果图上传不了,大家自己运行试试
 
JavaWeb <wbr>ChartDirector <wbr>图表插件-web图表开发-ChartDirector资料
六、【例子3】
实例代码(网上找了个简单的我自己写的那个太多了,还有中文注释呵呵)
mytest2.jsp
<<%@page import="ChartDirector.*" %>  
<<%  
.// The data for the line chart  
double[] data0 = {42, 49, 33, 38, 51, 46, 29, 41, 44, 57, 59, 52, 37, 34, 51, 56, 56, 60, 70, 76, 63, 67, 75, 64, 51};
double[] data1 = {50, 55, 47, 34, 42, 49, 63, 62, 73, 59, 56, 50, 64, 60, 67, 67, 58, 59, 73, 77, 84, 82, 80, 84, 98};
double[] data2 = {36, 28, 25, 33, 38, 20, 22, 30, 25, 33, 30, 24, 28, 15, 21, 26, 46, 42, 48, 45, 43, 52, 64, 60, 70};  
// The labels for the line chart  
String[] labels = {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24"};  
 
//设置图表的高和宽600*300,背景色为白色  
XYChart c = new XYChart(600, 300, 0xeeeeff, 0x000000, 1);  
c.setRoundedFrame();  
 
//设置绘图领域为(55,58) 大小为520*195   
//背景色为白色 横坐标和纵坐标的网格线颜色  
c.setPlotArea(55, 58, 520, 195, 0xffffff, -1, -1, 0xcccccc, 0xcccccc);  
 
//设置网格上边和标题下边的区域大小为(50, 30),字横向排列,字体为宋体,大小为9  
c.addLegend(50, 30, false, "Arial Bold", 9).setBackground=\'#\'"  
 
//设置标题的内容,字体,颜色  
c.addTitle("Application Server Throughput", "Times New Roman Bold Italic", 15).setBackground(0xccccff, 0x000000, Chart.glassEffect());  
 
//设置y轴的标题,字体,大小,颜色  
c.yAxis().setTitle("MBytes per hour");  
 
//设置x轴的标签  
c.xAxis().setLabels(labels);  
 
//设置x轴显示数据的跨度  
c.xAxis().setLabelStep(3);  
 
//设置x轴标题,字体,大小,颜色  
c.xAxis().setTitle("Jun 12, 2006");  
 
// Add a line layer to the chart  
LineLayer layer = c.addLineLayer2();  
 
//设置线的宽度2  
layer.setLineWidth(2);  
 
//填写数据,设置线的颜色  
layer.addDataSet(data0, 0xff0000, "Server #1");  
layer.addDataSet(data1, 0x008800, "Server #2");  
layer.addDataSet(data2, c.dashLineColor(0x3333ff, Chart.DashLine), "Server #3");  
 
//输出图表  
String chart1URL = c.makeSession(request, "chart1");  
 
// Include tool tip for the chart  
String imageMap1 = c.getHTMLImageMap("", "", "title='[{dataSetName}] Hour {xLabel}: {value} MBytes'");
 
  
  
  
  Multi-Line Chart  
       
JavaWeb <wbr>ChartDirector <wbr>图表插件-web图表开发-ChartDirector资料
 
转载地址:http://blog.sina.com.cn/s/blog_5a6efa330102v5qh.html