package com.test; import java.awt.Color; import java.awt.Font; import java.awt.Graphics; import java.awt.image.BufferedImage; import java.io.File; import java.io.FileOutputStream; import javax.imageio.ImageIO; public class CreateImage { private static Font mFont = new Font("宋体", Font.PLAIN, 12); public static void main(String[] args){ double[] value = {0.57d,1.25d,0.83d,1.38d,2.35d}; createimage(value,2.35d); } private static void createimage(double[] value,double maxvalue){ try{ int ranwidth = 33,ranheight = 112; int width = 764, height = 168; BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB); Graphics g = image.getGraphics(); g.setColor(new Color(255, 255,255)); g.fillRect(1, 1, width - 1, height - 1); g.setColor(new Color(255, 255,255)); g.drawRect(0, 0, width - 1, height - 1); g.setFont(mFont); g.setColor(new Color(255, 26,135)); Color c = new Color(227, 227, 227); for(int i= 0 ;i<5;i++){ if(i==0){ g.setColor(c); g.fillRect(72, 54, 33, ranheight); g.setColor(c); g.drawRect(72, 54, 33, ranheight); }else{ g.setColor(c); g.fillRect(72+(ranwidth+110)*i, 54, 33, ranheight); g.setColor(c); g.drawRect(72+(ranwidth+110)*i, 54, 33, ranheight); } } for(int i= 0 ;i<value.length;i++){ Color myc = null; if(i == 0){ myc = new Color(75,178,209); }else if(i==1){ myc = new Color(243,152,1); }else if(i == 2){ myc = new Color(90,159,105); }else if(i == 3){ myc = new Color(144,130,189); }else{ myc = new Color(154,190,66); } if(i==0){ g.setColor(myc); g.fillRect(72, 54+(ranheight-(int)Math.round(ranheight*(value[i]/maxvalue))), 33, (int)Math.round(ranheight*(value[i]/maxvalue))); g.setColor(myc); g.fillRect(72, 54+(ranheight-(int)Math.round(ranheight*(value[i]/maxvalue))), 33, (int)Math.round(ranheight*(value[i]/maxvalue))); }else{ g.setColor(myc); g.fillRect(72+(ranwidth+110)*i, 54+(ranheight-(int)Math.round(ranheight*(value[i]/maxvalue))), 33, (int)Math.round(ranheight*(value[i]/maxvalue))); g.setColor(myc); g.drawRect(72+(ranwidth+110)*i, 54+(ranheight-(int)Math.round(ranheight*(value[i]/maxvalue))), 33, (int)Math.round(ranheight*(value[i]/maxvalue))); } } c = new Color(181, 181, 181); for(int i = 0;i<5;i++){ if(i==0){ g.setColor(c); g.setFont(mFont); g.drawString(value[i]+"s", 72,48); }else{ g.setColor(c); g.setFont(mFont); g.drawString(value[i]+"s", 72+(ranwidth+110)*i,48); } } g.dispose(); String filename = "d:\\createimg.jpg"; File file = new File(filename); if(!file.exists()){ file.createNewFile(); } FileOutputStream s = new FileOutputStream(file); ImageIO.write(image, "JPEG", s); }catch(Exception e){ e.printStackTrace(); } } }
相关推荐
Java生成柱状图是一种在Java应用程序中展示数据的可视化方式,尤其适用于数据分析和报告。柱状图能够清晰地比较不同类别的数据量,是数据可视化的常见选择。在这个项目中,开发者提供了一个可以直接运行的解决方案,...
总结来说,Java生成柱状图和折线图主要依赖于JFreeChart库,通过创建数据集、构建图表对象以及在GUI中展示,可以轻松实现数据的可视化。JCommon库则为JFreeChart提供了基础支持。开发者可以通过学习这些库的API,...
在这个特定的问题中,我们需要使用Swing来创建一个图形界面,展示用户输入文件中字母的频率统计,以柱状图的形式呈现。以下是实现这一功能所需的关键知识点: 1. **Swing组件**: - `JFrame`:作为应用程序的主...
java+jfreechart+struts 生成柱状图 java jfreechart 柱状图 java jfreechart 柱状图 谁需要完整项目可以去http://download.csdn.net/source/2665347
Java 实现柱状图是指使用 Java 语言创建柱状图、饼状图、曲线图等图形的一种技术。通过使用 JFreeChart 库,可以轻松地创建各种类型的图形。下面将对 Java 实现柱状图的相关知识点进行详细介绍。 1. JFreeChart 库 ...
Java 生成柱状图是数据可视化的一个常见需求,特别是在数据分析和报表展示中。在这个MyEclipse完整项目实例中,我们主要关注的是如何使用Java和JFreeChart库来创建柱状图。JFreeChart是一个强大的开源Java图表库,它...
Java 动态生成 Word 文档(含表格、柱状图)并下载 ...在上面的示例代码中,我们使用 iText 库来设置文档的样式和内容,并使用 JFreeChart 库来生成柱状图。同时,我们还使用了 JDBC 技术来与数据库交互和获取数据。
java根据动态模板生成pdf(包含柱状图)所需jar包 iText+FreeMarker+JFreeChart生成可动态配置的PDF文档。 iText有很强大的PDF处理能力,但是样式和排版不好控制,直接写PDF文档,数据的动态渲染很麻烦。 FreeMarker...
JFreeChart 是一个开源的Java图表库,用于生成各种类型的图表,包括折线图、柱状图、饼图、散点图等,也支持生成堆积图。它提供了丰富的API,使得开发者能够灵活地控制图表的样式、布局和数据来源。 ### 3. 使用...
这个场景涉及到在Word文档中插入图表,特别是柱状图,并且能够自定义颜色,这在数据分析、报告生成或者数据可视化中非常常见。下面我们将详细讨论如何实现这一功能。 首先,我们需要了解.docx文件的本质。实际上,...
1. **CreateBarChart.java**:这个文件包含了一个用于生成柱状图的方法。柱状图是一种常见的统计图表,通过矩形的长度或高度来表示分类变量的频数或数值变量的大小。在JFreeChart中,开发者可以使用`CategoryDataset...
--------------------------------------------------我们经常要在网页看到一些动态更新的图片,最常见的莫过于股票的K线图,本文试图通过一个简单的实例,向大家展示如何通过JSP 调用Java Bean在网页上动态生成柱状图....
在Java编程语言中,生成数据可视化图形,如饼状图、柱状图和折线图,是数据分析和展示的关键步骤。这些图表可以帮助我们直观地理解数据分布和趋势。本篇文章将详细探讨如何使用Java实现这三种图表。 首先,饼状图...
java实现的 生成饼状图 生成单组柱状图 生成多组柱状图 生成堆积柱状图 生成折线图 里面包括了所需要的 jcommon-1.0.12.jar jfreechart-1.0.8a.jar
JFreeChart 是一个开源的Java库,用于生成高质量的2D图表,如折线图、饼图、柱状图和堆栈柱状图等。它广泛应用于数据分析、报告和应用程序中,提供丰富的自定义选项来满足各种视觉需求。在本项目中,你将找到能够...
总的来说,使用 Apache POI,你可以根据实际需求创建复杂且动态的柱状图,这对于数据展示和报告生成非常有用。通过深入了解 POI 的 API 和提供的示例代码,你可以轻松地将数据转化为生动直观的可视化图表。
Springboot Controller中使用service调SQL语句的方法,动态获取数据库信息添加到WORD表格中,检查到的数据绘制为柱形图(直方图)添加到文档中,并生成word(含表格,柱状图)存储到本地,在浏览器下载本地的word文档
在JFreeChart中,你可以使用`CategoryDataset`来存储数据,然后创建`JFreeChart`实例,最后使用`ChartFactory.createBarChart()`方法生成柱状图。你可以自定义每个类别的标签,设置柱子的颜色,甚至添加工具提示和...
### 二、Java生成柱状图 #### 2.1 准备工作 同样地,在生成柱状图之前也需要确保已安装JFreeChart库。 #### 2.2 创建数据集 与饼图类似,我们首先创建一个`DefaultCategoryDataset`对象来存储柱状图的数据: ``...