/** * 2D栏位组合图初始化 组合图和前面的单一图使用的元数据格式是不一样的,请大家注意它们的区别 * * @param * @return */ public ActionForward fcf2DBarMsInit( ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { // 实例化一个图形配置对象 GraphConfig graphConfig = new GraphConfig(); // 主标题 graphConfig.setCaption("Google软件2010年月度销售业绩图表"); // 设置数字值的前缀 graphConfig.setNumberPrefix("$"); // 使用这种方式可以加入框架没有封装的原生报表属性,原生属可以参考《开发指南》的相关章节 // graphConfig.put("propertyName", "value"); graphConfig.setCanvasBorderThickness(new Boolean(true)); // 实例化组合种类配置对象 CategoriesConfig categoriesConfig = new CategoriesConfig(); List cateList = new ArrayList(); cateList.add(new Categorie("一月")); cateList.add(new Categorie("二月")); cateList.add(new Categorie("三月")); cateList.add(new Categorie("四月")); cateList.add(new Categorie("五月")); cateList.add(new Categorie("六月")); categoriesConfig.setCategories(cateList); List list = getFcfDataList4Group(new BaseDto()); String xmlString = FcfDataMapper.toFcfXmlData(list, graphConfig, categoriesConfig); request.setAttribute("xmlString", xmlString); return mapping.findForward("2dBarMsView"); }
/** * FCF 3D柱状图初始化 * * @param * @return */ public ActionForward fcf3DColumnInit( ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { // 实例化一个图形配置对象 GraphConfig graphConfig = new GraphConfig(); // 主标题 graphConfig.setCaption("Google软件2010年月度销售业绩图表"); // 设置数字值的前缀 graphConfig.setNumberPrefix("$"); // 使用这种方式可以加入框架没有封装的原生报表属性,原生属可以参考《开发指南》的相关章节 // graphConfig.put("propertyName", "value"); Dto qDto = new BaseDto(); qDto.put("product", "1"); // 查询原始数据 List list = g4Reader.queryForList("Demo.getFcfDataList", qDto); List dataList = new ArrayList(); // 将原始数据对象转换为框架封装的Set报表数据对象 for (int i = 0; i < list.size(); i++) { Dto dto = (BaseDto) list.get(i); // 实例化一个图表元数据对象 Set set = new Set(); set.setName(dto.getAsString("name")); // 名称 set.setValue(dto.getAsString("value")); // 数据值 set.setColor(dto.getAsString("color")); // 柱状图颜色 dataList.add(set); } // 将图表数据转为Flash能解析的XML资料格式 String xmlString = FcfDataMapper.toFcfXmlData(dataList, graphConfig); // 此Key对应的<flashReport />标签的datavar属性 request.setAttribute("xmlString", xmlString); return mapping.findForward("3dColumnView"); }
/** * FCF 面积图初始化 * * @param * @return */ public ActionForward fcfAreaInit( ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { // 实例化一个图形配置对象 GraphConfig graphConfig = new GraphConfig(); // 主标题 graphConfig.setCaption("Google软件2010年月度销售业绩图表"); // 设置数字值的前缀 graphConfig.setNumberPrefix("$"); // graphConfig.setShowValues(true); // 使用这种方式可以加入框架没有封装的原生报表属性,原生属可以参考《开发指南》的相关章节 // graphConfig.put("propertyName", "value"); // 设置水平分割线的颜色 graphConfig.put("divLineColor", "008ED6"); // 设置水平分割线的透明度 graphConfig.put("divLineAlpha", "10"); // 设置对水平分割区域使用斑马纹 graphConfig.put("showAlternateHGridColor", "1"); // 设置斑马纹颜色 graphConfig.put("AlternateHGridColor", "BFFFFF"); // 设置斑马纹的透明度 graphConfig.put("alternateHGridAlpha", "10"); // graphConfig.put("areaAlpha", "60"); // graphConfig.put("areaBorderColor", "441570"); Dto qDto = new BaseDto(); qDto.put("product", "1"); // 查询原始数据 List list = g4Reader.queryForList("Demo.getFcfDataList", qDto); List dataList = new ArrayList(); // 将原始数据对象转换为框架封装的Set报表数据对象 for (int i = 0; i < list.size(); i++) { Dto dto = (BaseDto) list.get(i); // 实例化一个图表元数据对象 Set set = new Set(); set.setName(dto.getAsString("name")); // 名称 set.setValue(dto.getAsString("value")); // 数据值 // set.setColor(dto.getAsString("color")); dataList.add(set); } // 将图表数据转为Flash能解析的XML资料格式 String xmlString = FcfDataMapper.toFcfXmlData(dataList, graphConfig); // 此Key对应的<flashReport />标签的datavar属性 request.setAttribute("xmlString", xmlString); return mapping.findForward("areaView"); }
/** * 折线组合图初始化(双Y轴) * * @param * @return */ public ActionForward fcfLineMs2YInit( ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { // 实例化一个图形配置对象 GraphConfig graphConfig = new GraphConfig(); // 主标题 graphConfig.setCaption("Google软件2010年月度销售业绩图表"); // 设置数字值的前缀 // graphConfig.setNumberPrefix("$"); // 使用这种方式可以加入框架没有封装的原生报表属性,原生属可以参考《开发指南》的相关章节 // graphConfig.put("propertyName", "value"); // 主Y轴坐标名 graphConfig.put("PYAxisName", "Product A"); // 不支持中文 // 次Y轴坐标名 graphConfig.put("SYAxisName", "Product B"); // 不支持中文 graphConfig.setCanvasBorderThickness(new Boolean(true)); graphConfig.setShowValues(new Boolean(false)); // 是否格式化数字,默认为1(True),自动的给你的数字加上K(千)或M(百万);若取0,则不加K或M graphConfig.put("formatNumberScale ", "0"); // 实例化组合种类配置对象 CategoriesConfig categoriesConfig = new CategoriesConfig(); List cateList = new ArrayList(); cateList.add(new Categorie("一月")); cateList.add(new Categorie("二月")); cateList.add(new Categorie("三月")); cateList.add(new Categorie("四月")); cateList.add(new Categorie("五月")); cateList.add(new Categorie("六月")); cateList.add(new Categorie("七月")); cateList.add(new Categorie("八月")); cateList.add(new Categorie("九月")); cateList.add(new Categorie("十月")); cateList.add(new Categorie("十一月")); cateList.add(new Categorie("十二月")); categoriesConfig.setCategories(cateList); List list = getFcfDataList4LineGroup42Y(new BaseDto()); String xmlString = FcfDataMapper.toFcfXmlData(list, graphConfig, categoriesConfig); request.setAttribute("xmlString", xmlString); System.out.println(xmlString); return mapping.findForward("lineMs2YView"); }
/** * 查询数据报表XML格式串 * * @param mapping * @param form * @param request * @param response * @return * @throws Exception */ public ActionForward queryReportXmlDatas( ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { CommonActionForm aForm = (CommonActionForm) form; Dto dto = aForm.getParamAsDto(request); String product = "(产品一)"; if (dto.getAsString("product").equals("2")) { product = "(产品二)"; } List list = g4Reader.queryForList("Demo.getFcfDataList", dto); // 实例化一个图形配置对象 GraphConfig graphConfig = new GraphConfig(); // 主标题 graphConfig.setCaption("Google软件2010年月度销售业绩图表" + product); // X坐标轴名称 graphConfig.setXAxisName("月度"); // 数字值前缀 graphConfig.setNumberPrefix("$"); // 使用这种方式可以加入框架没有封装的原生报表属性,原生属可以参考《G4Studio开发指南》的相关章节 // graphConfig.put("propertyName", "value"); List dataList = new ArrayList(); // 将原始数据对象转换为框架封装的Set报表数据对象 for (int i = 0; i < list.size(); i++) { Dto dto1 = (BaseDto) list.get(i); // 实例化一个图表元数据对象 Set set = new Set(); set.setName(dto1.getAsString("name")); // 名称 set.setValue(dto1.getAsString("value")); // 数据值 set.setColor(dto1.getAsString("color")); // 柱状图颜色 dataList.add(set); } // 将图表数据转为Flash能解析的XML资料格式 String xmlString = FcfDataMapper.toFcfXmlData(dataList, graphConfig); Dto outDto = new BaseDto(); outDto.put("success", new Boolean(true)); outDto.put("xmlstring", xmlString); write(JsonHelper.encodeObject2Json(outDto), response); return mapping.findForward(null); }