`

JfreeChart 报表 柱状图

阅读更多
今天闲来无事,看了点JfreeChart的中文教程。简单的柱状图。作为自己备忘。
	/**
	 * 选项卡界面查询 
	 * @return
	 * @throws Exception
	 */
	@Action(value = "cnindexquery", results = { @Result(location = "/page/userpercept/corenetwork/cnindexqueryMore.jsp") })
	public String cnindexquery() throws Exception {
		Map<String,String> dateMap=(Map<String,String>)session.get("dateMap");
		//查询表
		if(dateMap!=null){
			//无关代码略
			List<CnIndexCallCtrlData> list = ccDao.findCnIndexCallCtrlInfoByCondition(form);
			String title="核心网呼叫控制";
			String xName="时间范围";
			String yName="呼叫占用次数";
			DefaultCategoryDataset dataset = new DefaultCategoryDataset();
			for (CnIndexCallCtrlData cnIndexCallCtrlData : list) {
				dataset.addValue(cnIndexCallCtrlData.getSEIZE_COUNT(), "",
						cnIndexCallCtrlData.getSTARTTIME()+"~"+cnIndexCallCtrlData.getENDTIME());
			}
			JFreeChart chart = ChartFactory.createBarChart3D(
					title, // 图表标题
					xName, // 目录轴的显示标签
					yName, // 数值轴的显示标签
					dataset, // 数据集
					PlotOrientation.VERTICAL, // 图表方向:水平、垂直
					true, // 是否显示图例(对于简单的柱状图必须是false)
					false, // 是否生成工具
					false // 是否生成URL链接
					);
			chart=setChartCode(chart);//解决乱码
			String img=createImage(chart);//生成web报表
			System.out.println(img);
			request.put("img", img);
		}
		return ConstUtil.SUCCESS;
	}
	/**
	 * 生成web报表
	 * @param chart
	 * @return
	 * @throws IOException
	 */
	public String createImage(JFreeChart chart) throws IOException{
		HttpServletRequest req = (HttpServletRequest) (ActionContext.getContext().get(ServletActionContext.HTTP_REQUEST));
		String filename = ServletUtilities.saveChartAsPNG(chart, 800, 500,null, req.getSession());
		ServletContext servlet = (ServletContext) (ActionContext.getContext().get(ServletActionContext.SERVLET_CONTEXT));
		return servlet.getContextPath() + "/servlet/DisplayChart?filename="+ filename;
	}
	/**
	 * 解决乱码问题
	 * @param chart
	 * @return
	 */
	public JFreeChart setChartCode(JFreeChart chart){
		/*------解决了汉字乱码的问题-----------*/
		CategoryPlot categoryplot = (CategoryPlot) chart.getPlot();
		NumberAxis numberaxis = (NumberAxis) categoryplot.getRangeAxis();  
		CategoryAxis domainAxis = categoryplot.getDomainAxis(); 
		//设置标题的文字
		chart.getTitle().setFont(new Font("宋体", Font.PLAIN, 20));   
		//设置X轴坐标上的文字
		domainAxis.setTickLabelFont(new Font("sans-serif", Font.PLAIN, 11));  
		//设置X 轴的标题文字     
		domainAxis.setLabelFont(new Font("宋体", Font.PLAIN, 12));  
		//设置Y 轴坐标上的文字  
		numberaxis.setTickLabelFont(new Font("sans-serif", Font.PLAIN, 12));  
		//设置Y 轴的标题文字
		numberaxis.setLabelFont(new Font("宋体", Font.PLAIN, 12));  
		//设置底部文字     
		chart.getLegend().setItemFont(new Font("宋体", Font.PLAIN, 12));
		return chart;
	}

分享到:
评论

相关推荐

    JFreeChart画图 饼状图 单组柱状图 多组柱状图 堆积柱状图 折线图

    JFreeChart 饼状图 柱状图 柱状图 堆积柱状图 折线图 这个是我特地开发的一个用JFreeChart开发的用来画图的项目,已经开发成形了各种项目的各种需求的项目,并且自己可以拓展,根据需求修改代码,完成项目的需要。 ...

    JFreeChart 折线、柱状组合图

    public JFreeChart createChart(String Ytitle, String title, CategoryDataset lineData, CategoryDataset barData) { //参考附件 return chart; } //struts 部分 &lt;!--begin 维优特例 --&gt; ...

    自定义JFreeChart柱状图的详细说明

    JFreeChart柱状图的详细说明,教你怎么样自定义图形报表 应用到自己的项目上

    jfreeChart报表小demo

    利用jfreeChart开发的饼图、柱状图、线图小案例,结合itext页面pdf展示,适合入门学习。

    JFreeChart报表的应用

    利用JFreeChart和struts框架实现一个一个3D柱形图的报表功能

    jfreechart各类曲线图JSP代码

    JFreeChart是一组功能强大、灵活易用的Java绘图API,使用它可以生成多种通用性的报表,包括柱状图、饼图、曲线图、甘特图等。它能够用在Swing和Web等中制作自定义的图表或报表,并且得到广泛的应用。本文将通过引领...

    jFreeChart生成报表图片

    项目下载之后可以直接运行,里面包含常见的柱状图、pie型图 折线图,温度计,秒表等格式。

    JFreeChart生成报表Demo案例

    JFreeChart生成报表Demo案例,包含生产饼状图(3D效果),柱状图(3D效果),折现图等(3D效果)。及其所需的Jar包。

    jfreechart图形化报表

    可以绘制各种图形报表,前段时间在项目中用到了,挺不错的。图形的效果真的不错哦,可以绘制饼图,柱状图,以及各种不规则图形等等。里面有很多实例和源码,希望能为你带来帮助。

    jfreechart生成报表图片.zip

    下载之后立刻就能运行,至此柱状图,饼形图,折线图....

    java生成报表JFreeChart

    这是一款免费的JAVA生成报表的工具,里面有柱状图、饼状图、折线图的Demo简单易学

    JFreeChart查询数据库生成图形报表

    这个项目只针对与初次接触JFreeChart或者想用JFreeChart制作简单的图形报表的朋友们,项目里只写了饼状图、柱状图、折线图的实现,想要具体学习JFreeChart可以参考官方文档,我也是照着官方文档写的。

    使用 jfreechart 生成 曲线、柱状图、饼状图、分布图 展示到JSP

    虽然现在JS做报表和图形展示已经非常普遍和漂亮了,但是不能忽略有jfreechart 这样一种东西! 这些翻阅资料,在看以前写的示例时发现了关于jfreechart 的简单示例,不管怎样发上来分享一下!

    深入探究JFreeChart(图表报表实用教材)

    深入探究JFreeChart(图表报表实用教材) 深入探究JFreeChart(图表报表实用教材) 深入探究JFreeChart(图表报表实用教材)

    jfreechart 折线图、饼状图、柱状图

    jfreechart 折线图、饼状图、柱状图在web页面上的应用,自己在网上找到点资料,然后写了个示例。 导入的myeclipse中部署即可。

    Jfreechart

    1. JFreeChart是一组功能强大、灵活易用的Java绘图API,使用它可以生成多种通用性的报表,包括柱状图、饼图、曲线图、甘特图等。它能够用在Swing和Web等中制作自定义的图表或报表,并且得到广泛的应用。本文将通过...

    jfreechart试例代码

    使用myEclipse6.0.1工具开发的简单使用jfreechart报表插件.包括jsp页面调用显示报表.

    JFreeChart教程

    很详细的JFreeChart教程、JFreeChart报表、wsChart图表组件、柱状图、饼图、折线图、柏拉图、单柱图、波形图、

    jfreechart使用SqlServer2000做的饼状图,柱状图,折线图

    jfreechart使用SqlServer2000做的饼状图,柱状图,折线图。 最近在学习jfreechart,根据网上的资料做了这3个小例子,学习用的,代码有点乱!

    jfreechart 图形报表

    JFreeChart可生成饼图(pie charts)、柱状图(bar charts)、散点图(scatter plots)、时序图(time series)、甘特图(Gantt charts)等等多种图表,并且可以产生PNG和JPEG格式的输出,还可以与PDF和EXCEL关联。

Global site tag (gtag.js) - Google Analytics