`
bean-woo
  • 浏览: 131312 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论

Gwt FusionCharts简单demo

 
阅读更多

 

package com.appdev.test.client;

 

import com.google.gwt.core.client.EntryPoint;

import com.smartgwt.client.types.Overflow;

import com.smartgwt.client.widgets.layout.HLayout;

import com.smartgwt.client.widgets.layout.VLayout;

 

/**

*EntryPoint 

*/

public class Chart implements EntryPoint {

private VLayout panel;

 

@Override

public void onModuleLoad() {

// TODO Auto-generated method stub

panel = new VLayout();

panel.setSize("900", "700");

panel.setStyleName("crm-ContextArea");

 

panel.setOverflow(Overflow.AUTO);

 

drawFusionCharts(panel);

 

}

 

private void drawFusionCharts(VLayout panel) {

 

FusionChart chart1 = new FusionChart("FCF_Area2D.swf", "400", "350", "Area2D.xml");

 

FusionChart chart2 = new FusionChart("FCF_StackedBar2D.swf", "400","350", "StBar2D.xml");

FusionChart chart3 = new FusionChart("FCF_Doughnut2D.swf", "400", "350","Doughnut2D.xml");

FusionChart chart4 = new FusionChart("FCF_Funnel.swf", "350", "300","Funnel.xml");

 

HLayout northLayout = new HLayout();

northLayout.setHeight("50%");

northLayout.setBackgroundColor("#FFFFFF");

 

northLayout.addMember(chart1);

northLayout.addMember(chart2);

 

HLayout southLayout = new HLayout();

southLayout.setHeight("50%");

southLayout.setBackgroundColor("#FFFFFF");

 

southLayout.addMember(chart3);

southLayout.addMember(chart4);

 

panel.addMember(northLayout);

panel.addMember(southLayout);

panel.draw();

}

 

}



FusionChart类:

package com.appdev.test.client;

import java.util.HashMap;
import com.smartgwt.client.widgets.plugins.Flashlet;

public class FusionChart extends Flashlet {

private static int count = 0;

private String swfId;

public FusionChart(String src, String width, String height, String dataUrl) {
super();

setCodeBase("http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0");
setClassID("clsid:d27cdb6e-ae6d-11cf-96b8-444553540000");
setPluginsPage("http://www.macromedia.com/go/getflashplayer");
swfId = "fusionChartId_" + count;
++count;

setID(swfId);
setName(swfId);
setSrc("charts/fusioncharts/flash/" + src);
setSize(width, height);

HashMap<String, String> hashMap = new HashMap<String, String>();

hashMap.put("id", swfId);
hashMap.put("flashvars", "&id=" + swfId + "&chartWidth=" + width + "&chartHeight=" + height + "&registerWithJS=1"
+ "&debugMode=0" + "&dataURL=" + "charts/fusioncharts/data/" + dataUrl);
setParams(hashMap);

}
}

下载包放于war目录下:(.swf,FusionCharts.js)文件
分享到:
评论
3 楼 mfkxk298 2012-07-17  
bean-woo 写道
mfkxk298 写道
按照你的方法试了,成功了,感谢 。现在就不知道xml文件中的中文问题,你有解决方案没!

在<chart unescapeLinks="0">就可以了

我是根据查询到的数据结果,动态更改XML文件,再生成对应的图表。。不过问题解决了,是把XML文件改成GBK格式的,hashMap.put(&dataUrl改成&dataXML)。不知道你有是否有更好的方式来动态生成图表呀!谢谢你的回复
2 楼 bean-woo 2012-07-16  
mfkxk298 写道
按照你的方法试了,成功了,感谢 。现在就不知道xml文件中的中文问题,你有解决方案没!

在<chart unescapeLinks="0">就可以了
1 楼 mfkxk298 2012-07-13  
按照你的方法试了,成功了,感谢 。现在就不知道xml文件中的中文问题,你有解决方案没!

相关推荐

Global site tag (gtag.js) - Google Analytics