`
younglibin
  • 浏览: 1211164 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

jfreeChart堆栈柱状图参数设置

阅读更多
package com.iman.nrms.nrmwns.wrm.analyse.domain.util;

import java.awt.Color;
import java.awt.Font;
import java.text.DecimalFormat;

import org.jfree.chart.JFreeChart;
import org.jfree.chart.axis.CategoryAxis;
import org.jfree.chart.axis.NumberAxis;
import org.jfree.chart.axis.ValueAxis;
import org.jfree.chart.labels.StandardCategoryItemLabelGenerator;
import org.jfree.chart.plot.CategoryPlot;
import org.jfree.chart.renderer.category.BarRenderer;

/**
 * 格式化 JFreeChart 输出图片使用
 * 
 *   
 * Author : 
 * Date   : Nov 26, 2009
 * Time   : 11:50:41 AM 
 * Version: 1.0
 */
public class FormatPic {
	/**
	 * 格式化堆栈柱状图图使用
	 * 
	 * @param chart
	 * @returnType: void
	 * @author: 
	 * @data: Nov 26, 2009
	 * @time: 11:51:26 AM
	 */
	public static void setView(JFreeChart chart){
				  // 图例字体清晰 
				   chart.setTextAntiAlias(false); 
				   chart.setBackgroundPaint(Color.WHITE); 
				   // 2 .2 主标题对象 主标题对象是 TextTitle 类型 
				   chart 
					 .setTitle(new TextTitle(chartTitle, new Font("隶书", Font.BOLD, 
					   25))); 
				   // 2 .2.1:设置中文 
				   // x,y轴坐标字体 
				   Font labelFont = new Font("SansSerif", Font.TRUETYPE_FONT, 12); 
				   // 2 .3 Plot 对象 Plot 对象是图形的绘制结构对象 
				   CategoryPlot plot = chart.getCategoryPlot(); 
				   // 设置横虚线可见 
				   plot.setRangeGridlinesVisible(true); 
				   // 虚线色彩 
				   plot.setRangeGridlinePaint(Color.gray); 
				   // 数据轴精度 
				   NumberAxis vn = (NumberAxis) plot.getRangeAxis(); 
				   // 设置最大值是1 
				   vn.setUpperBound(1); 
				   // 设置数据轴坐标从0开始 
				   // vn.setAutoRangeIncludesZero(true); 
				   // 数据显示格式是百分比 
				   DecimalFormat df = new DecimalFormat("0.00%"); 
				   vn.setNumberFormatOverride(df); // 数据轴数据标签的显示格式 
				   // DomainAxis (区域轴,相当于 x 轴), RangeAxis (范围轴,相当于 y 轴) 
				   CategoryAxis domainAxis = plot.getDomainAxis(); 
				   domainAxis.setLabelFont(labelFont);// 轴标题 
				   domainAxis.setTickLabelFont(labelFont);// 轴数值 
				   // x轴坐标太长,建议设置倾斜,如下两种方式选其一,两种效果相同 
				   // 倾斜(1)横轴上的 Lable 45度倾斜 
				   // domainAxis.setCategoryLabelPositions(CategoryLabelPositions.UP_45); 
				   // 倾斜(2)Lable(Math.PI 3.0)度倾斜 
				   // domainAxis.setCategoryLabelPositions(CategoryLabelPositions 
				   // .createUpRotationLabelPositions(Math.PI / 3.0)); 
				   domainAxis.setMaximumCategoryLabelWidthRatio(0.6f);// 横轴上的 Lable 是否完整显示 
				   plot.setDomainAxis(domainAxis); 
				   // y轴设置 
				   ValueAxis rangeAxis = plot.getRangeAxis(); 
				   rangeAxis.setLabelFont(labelFont); 
				   rangeAxis.setTickLabelFont(labelFont); 
				   // 设置最高的一个 Item 与图片顶端的距离 
				   rangeAxis.setUpperMargin(0.15); 
				   // 设置最低的一个 Item 与图片底端的距离 
				   rangeAxis.setLowerMargin(0.15); 
				   plot.setRangeAxis(rangeAxis); 
				   // Renderer 对象是图形的绘制单元 
				   StackedBarRenderer renderer = new StackedBarRenderer(); 
				   // 设置柱子宽度 
				   renderer.setMaximumBarWidth(0.05); 
				   // 设置柱子高度 
				   renderer.setMinimumBarLength(0.1); 
				   // 设置柱的边框颜色 
				   renderer.setBaseOutlinePaint(Color.BLACK); 
				   // 设置柱的边框可见 
				   renderer.setDrawBarOutline(true); 
				   // // 设置柱的颜色(可设定也可默认) 
				   renderer.setSeriesPaint(0, new Color(204, 255, 204)); 
				   renderer.setSeriesPaint(1, new Color(255, 204, 153)); 
				   // 设置每个地区所包含的平行柱的之间距离 
				   renderer.setItemMargin(0.4); 
				   plot.setRenderer(renderer); 
				   // 设置柱的透明度(如果是3D的必须设置才能达到立体效果,如果是2D的设置则使颜色变淡) 
				   // plot.setForegroundAlpha(0.65f); 
	}
}

 

分享到:
评论

相关推荐

    jfreechart 堆栈柱状图跟折线图结合拼接

    jfreechart 堆栈柱状图跟折线图结合拼接 jar包请戳http://download.csdn.net/detail/a156435646/7424707

    jfreechart 生成折线图,饼图,柱状图,堆栈柱状图

    JFreeChart是一个流行的Java库,用于生成各种类型的图表,包括折线图、饼图和柱状图,甚至堆栈柱状图。这个压缩包中的"CreateChartServiceImpl.java"文件很可能包含了一个实现这些功能的服务类。 首先,我们要理解...

    jfreechart_生成折线图,饼图,柱状图,堆栈柱状图

    jfreechart 生成折线图、饼图、柱状图、堆栈柱状图 jfreechart 是一个功能强大且流行的 Java 图表库,用于生成各种类型的图表,包括折线图、饼图、柱状图、堆栈柱状图等。在本文中,我们将使用 jfreechart 1.0.8a ...

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

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

    JFreeChart动态加载柱状图

    JFreeChart创建柱状图,之前网上很多都是创建柱状图的,静态的。数据更新之后柱状图随之改变,代码实现详见附件代码。所需要的jar包是jfreechart-1.0.13.jar,gnujaxp.jar,jcommon-1.0.16.jar

    jfreechart 绘制横向立体柱状图

    利用jfreechart绘制的横向立体柱状图,横坐标是数值,纵坐标是数据分类,需要提前引入jfreechart包文件到工程里,才不会报错

    jfreechart实现柱状图排序

    根据提供的信息,我们可以总结出以下关于使用 JFreeChart 实现柱状图排序的相关知识点: ### 一、背景介绍 在日常的数据分析与展示工作中,柱状图是非常常见的一种图表类型,它能直观地显示不同类别之间的数值差异...

    JFreeChart设置柱状图的宽度

    JFreeChart设置柱状图的宽度,当一个元素时不让显示那么宽。

    jfreechart 生成折线图,饼图,柱状图,堆栈柱状图

    标题中提到的“jfreechart生成折线图、饼图、柱状图、堆栈柱状图”是指使用Java的一个开源图形库JFreeChart来创建不同类型的统计图表。JFreeChart是一个功能全面、成熟的Java图表库,广泛应用于各种应用程序中进行...

    java里用JFreeChart画柱状图、折线图、雷达图

    在Java编程环境中,JFreeChart库是一个强大的工具,用于创建各种复杂的图表,包括柱状图、折线图和雷达图。这些图表对于数据可视化和数据分析非常有用,可以帮助开发者直观地展示大量信息。以下是对给定文件中每个...

    利用JFreeChart 实现柱状图,饼图,时序图,折线图等

    在Java编程环境中,JFreeChart库是一个非常强大的工具,它允许开发者轻松地创建各种图表,如柱状图、饼图、时序图和折线图等。这些图表在数据分析、报表展示以及各种可视化应用中非常常见。下面我们将详细介绍如何...

    JfreeChart柱状图饼图

    **JFreeChart——柱状图与饼图详解** 在Java编程中,JFreeChart库是一个强大的图表绘制工具,它能够帮助开发者创建出多种类型的图表,包括柱状图、饼图等,广泛应用于数据分析和可视化展示。这篇博文中,我们将深入...

    java+jfreechart+struts 生成柱状图

    java+jfreechart+struts 生成柱状图 java jfreechart 柱状图 java jfreechart 柱状图 谁需要完整项目可以去http://download.csdn.net/source/2665347

    jfreechart的使用-柱状图

    **标题:“jfreechart的使用-柱状图”** **描述**:这篇博客文章主要探讨了如何使用jFreeChart库创建柱状图。jFreeChart是Java编程语言中一个广泛使用的开源图表库,它提供了丰富的图表类型,包括柱状图、饼图、...

    jfreechart柱状图

    **JFreeChart 柱状图** JFreeChart 是一个流行的开源 Java 图形库,它提供了丰富的图表类型,包括柱状图、饼图、线图、散点图等,广泛应用于数据分析、报告生成以及可视化应用中。这个压缩包提供的源代码示例,展示...

    JFreeChart 折线、柱状组合图

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

    JFreeChart生成3D饼状图及柱状图

    JFreeChart是一款强大的Java图表库,它允许开发者创建多种类型的2D和3D图表,包括折线图、柱状图、饼状图、散点图等,并且支持自定义样式和颜色,使得数据可视化变得更加直观和生动。在这个特定的场景中,我们将关注...

Global site tag (gtag.js) - Google Analytics