java柱状图,java实现柱状图

本文目录一览:

怎么用java的相关类去画一个柱状图

可以使用java第三方JFreeChart的api:具体

import java.awt.Color;

import java.awt.GradientPaint;

import org.jfree.chart.ChartFactory;

import org.jfree.chart.JFreeChart;

import org.jfree.chart.axis.CategoryAxis;

import org.jfree.chart.axis.CategoryLabelPositions;

import org.jfree.chart.axis.NumberAxis;

import org.jfree.chart.plot.CategoryPlot;

import org.jfree.chart.plot.PlotOrientation;

import org.jfree.chart.renderer.category.BarRenderer;

import org.jfree.chart.renderer.category.BarRenderer3D;

import org.jfree.data.category.CategoryDataset;

import org.jfree.data.category.DefaultCategoryDataset;

import org.jfree.data.general.DatasetUtilities;

/**

* 柱状图测试

* @author xjh

*

*/

public class BarChartTest {

/**

* 得到2D柱状图的数据集合

*

* @return

*/

private CategoryDataset getDataset2D() {

String str1 = “First”;

String str2 = “Second”;

String str3 = “Third”;

String str4 = “Category 1”;

String str5 = “Category 2”;

String str6 = “Category 3”;

String str7 = “Category 4”;

String str8 = “Category 5”;

DefaultCategoryDataset localDefaultCategoryDataset = new DefaultCategoryDataset();

localDefaultCategoryDataset.addValue(1.0D, str1, str4);

localDefaultCategoryDataset.addValue(4.0D, str1, str5);

localDefaultCategoryDataset.addValue(3.0D, str1, str6);

localDefaultCategoryDataset.addValue(5.0D, str1, str7);

localDefaultCategoryDataset.addValue(5.0D, str1, str8);

localDefaultCategoryDataset.addValue(5.0D, str2, str4);

localDefaultCategoryDataset.addValue(7.0D, str2, str5);

localDefaultCategoryDataset.addValue(6.0D, str2, str6);

localDefaultCategoryDataset.addValue(8.0D, str2, str7);

localDefaultCategoryDataset.addValue(4.0D, str2, str8);

localDefaultCategoryDataset.addValue(4.0D, str3, str4);

localDefaultCategoryDataset.addValue(3.0D, str3, str5);

localDefaultCategoryDataset.addValue(2.0D, str3, str6);

localDefaultCategoryDataset.addValue(3.0D, str3, str7);

localDefaultCategoryDataset.addValue(6.0D, str3, str8);

return localDefaultCategoryDataset;

}

/**

* 创建2D柱状图

*

* @param paramCategoryDataset

* @return

*/

public JFreeChart createBarChart2D() {

//得到2D柱状图的数据集合

CategoryDataset paramCategoryDataset = getDataset2D();

//创建柱状图

JFreeChart localJFreeChart = ChartFactory.createBarChart(

“Bar Chart Demo”, “Category”, “Value”, paramCategoryDataset,

PlotOrientation.VERTICAL, true, true, false);

//设置柱状图属性

localJFreeChart.setBackgroundPaint(Color.white);

//获取柱状图的标注点集合

CategoryPlot localCategoryPlot = localJFreeChart.getCategoryPlot();

//设置标注点的背景色

localCategoryPlot.setBackgroundPaint(Color.lightGray);

//设置绘制区域的方格线的颜色

localCategoryPlot.setDomainGridlinePaint(Color.white);

//是方格线可见

localCategoryPlot.setDomainGridlinesVisible(true);

//设置方格线变动绘制颜色

localCategoryPlot.setRangeGridlinePaint(Color.white);

//得到数值坐标轴

NumberAxis localNumberAxis = (NumberAxis) localCategoryPlot

.getRangeAxis();

//设置坐标轴单元

localNumberAxis.setStandardTickUnits(NumberAxis

.createIntegerTickUnits());

//得到柱状图渲染器

BarRenderer localBarRenderer = (BarRenderer) localCategoryPlot

.getRenderer();

//如果超出绘制区域边界将不可见

localBarRenderer.setDrawBarOutline(false);

//创建倾斜度对象

GradientPaint localGradientPaint1 = new GradientPaint(0.0F, 0.0F,

Color.blue, 0.0F, 0.0F, new Color(0, 0, 64));

GradientPaint localGradientPaint2 = new GradientPaint(0.0F, 0.0F,

Color.green, 0.0F, 0.0F, new Color(0, 64, 0));

GradientPaint localGradientPaint3 = new GradientPaint(0.0F, 0.0F,

Color.red, 0.0F, 0.0F, new Color(64, 0, 0));

//为渲染器设置倾斜度

localBarRenderer.setSeriesPaint(0, localGradientPaint1);

localBarRenderer.setSeriesPaint(1, localGradientPaint2);

localBarRenderer.setSeriesPaint(2, localGradientPaint3);

//旋转坐标轴

CategoryAxis localCategoryAxis = localCategoryPlot.getDomainAxis();

localCategoryAxis.setCategoryLabelPositions(CategoryLabelPositions

.createUpRotationLabelPositions(0.5235987755982988D));

return localJFreeChart;

}

/**

* 创建3D柱状图

*

* @return

*/

public JFreeChart createBarChart3D() {

// 设置坐标点

double[][] arrayOfDouble = { { 10.0D, 4.0D, 15.0D, 14.0D },

{ -5.0D, -7.0D, 14.0D, -3.0D }, { 6.0D, 17.0D, -12.0D, 7.0D },

{ 7.0D, 15.0D, 11.0D, 0.0D }, { -8.0D, -6.0D, 10.0D, -9.0D },

{ 9.0D, 8.0D, 0.0D, 6.0D }, { -10.0D, 9.0D, 7.0D, 7.0D },

{ 11.0D, 13.0D, 9.0D, 9.0D }, { -3.0D, 7.0D, 11.0D, -10.0D } };

// 创建图表的数据集合,第一个参数:横坐标的文字说明;第二个参数:纵坐标的文字说明;第三个参数:坐标数组

CategoryDataset paramCategoryDataset = DatasetUtilities

.createCategoryDataset(“Series “, “Category “, arrayOfDouble);

// 创建3D图表

JFreeChart localJFreeChart = ChartFactory.createBarChart3D(

“3D Bar Chart Demo”, “Category”, “Value”, paramCategoryDataset,

PlotOrientation.VERTICAL, true, true, false);

// 得到横坐标点集合对象

CategoryPlot localCategoryPlot = localJFreeChart.getCategoryPlot();

// 设置方格可见

localCategoryPlot.setDomainGridlinesVisible(true);

// 得到坐标轴

CategoryAxis localCategoryAxis = localCategoryPlot.getDomainAxis();

// 设置标注点位置

localCategoryAxis.setCategoryLabelPositions(CategoryLabelPositions

.createUpRotationLabelPositions(0.3926990816987241D));

// 创建3D柱状图渲染对象

BarRenderer3D localBarRenderer3D = (BarRenderer3D) localCategoryPlot

.getRenderer();

// 设置超出边界不可见

localBarRenderer3D.setDrawBarOutline(false);

// 返回图表对象

return localJFreeChart;

}

}

java怎么生成excel柱状图?

如果是柱状图之类的表示 是在 excel中生成的那么你可以考虑做个excel模版引用数据利用excel内的机制自动生成想要的图,而数据可以用java利用poi的相关类 往模版里面写数据。就知道这么多 就给你说这么多吧

怎样用JAVA来实现在网页中制作柱状图

JFreeChart是JAVA平台上的一个开放的图表绘制类库。它完全使用JAVA语言编写,是为applications, applets, servlets 以及JSP等使用所设计。JFreeChart可生成饼图(pie charts)、柱状图(bar charts)、散点图(scatter plots)、时序图(time series)、甘特图(Gantt charts)等等多种图表,并且可以产生PNG和JPEG格式的输出,还可以与PDF和EXCEL关联。

JFreeChart的主页地址为:

在这里可以找到最新版本的JFreeChart的相关信息,如说明文档、下载连接以及示例图表等。

JFreeChart目前是最好的java图形解决方案,基本能够解决目前的图形方面的需求。

IBM文档:

Javaeye社区:

原创文章,作者:RCBX,如若转载,请注明出处:https://www.506064.com/n/142962.html

(0)
RCBXRCBX
上一篇 2024-10-14
下一篇 2024-10-14

相关推荐

  • 使用Nginx配置反向代理实现网站加速

    一、为什么需要反向代理 随着互联网的发展,网站的使用量和访问量越来越大,网站的访问速度成为了一个非常关键的问题。为了提高网站的访问速度,一种被广泛采用的方法是使用反向代理服务器对网…

    编程 2024-10-03
  • 提高Python和MATLAB代码的可读性的有效方法

    对于每一个代码工程师来说,保证代码的可读性是极其重要的。虽然刚开始写下的代码可以完成想要的任务,但是无论是在之后修改代码,还是在和其他工程师的合作中,代码的可读性都可以使这些任务变…

    编程 2024-10-04
  • 深入理解JavaScript中的Filter函数

    一、Filter函数的介绍 在JavaScript中,数组是一个非常重要的数据类型,属于对象的一种。在实际的开发过程中,我们往往需要对数组进行筛选、过滤等操作,这时候就可以使用Ja…

    编程 2024-10-04
  • java画彩虹(java游戏彩虹岛)

    1、如何用java实现画图 2、关于java中画图形的paint方法 3、彩虹怎么画 使用Java的Graphics类进行绘图 Graphics类提供基本的几何图形绘制方法,主要有…

  • Python 程序:以相反的顺序打印数组的元素

    在这个简单的 python 程序中,我们需要以相反的顺序打印一个数组。这是一个中级 python 程序。 要理解这个例子,您应该了解以下 Python 编程主题: Python 语…

    编程 2024-10-03
  • mysqldemo数据库操作(mysql设置sqlmode)

    本文目录一览: 1、如何增量导入MYSQL数据库中的数据 2、PHP操作mysql数据库的步骤 3、mysql数据库建好后怎么使用? 4、MySQL数据库的索引的操作知多少 5、j…

    编程 2024-10-03
  • 关于extjs的一个方法的信息

    本文目录一览: 1、extjs怎么自定义函数 2、ExtJs中怎么上传文件 3、extjs函数调用方法 extjs怎么自定义函数 extjs的自定义事件主要分三步 1.在类中定义事…

    编程 2024-10-03
  • php和c语言socket,c++和php

    本文目录一览: 1、PHP编程语言中的socket是什么东西 2、如何理解c/c++和php语言的区别 3、PHP怎么与C语言通信? 4、socket 编程和PHP区别 5、PHP…

    编程 2024-10-03
  • 5118网站的全面介绍

    一、5118网站的概述 5118网站是一个综合性的平台,涵盖了诸多领域,包括电商、游戏、音乐、视频等多个板块。该平台提供了丰富的服务和精美的产品,深受广大用户的喜爱。 在5118网…

    编程 2024-10-04
  • jsp网页首页(JSP网站)

    本文目录一览: 1、如何让JSP网页在session失效时跳转到首页? 2、jsp 中网站的首页源代码 3、jsp页面中分页查询首页、上一页与下一页、末页的显示条件??求解,实在找…

发表回复

登录后才能评论