网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

java直方图打印代码 java图形打印

java画直方图,饼图的源码分析

我更改了一点,完善一点。希望你能理解

“只有客户发展了,才有我们的生存与发展!”这是成都创新互联公司的服务宗旨!把网站当作互联网产品,产品思维更注重全局思维、需求分析和迭代思维,在网站建设中就是为了建设一个不仅审美在线,而且实用性极高的网站。创新互联对网站制作、成都网站制作、网站制作、网站开发、网页设计、网站优化、网络推广、探索永无止境。

import javax.swing.*;

import java.awt.*;

public class Histogram extends JPanel {

private int[] count;//方图的数值

private int x = 50;//x坐标为消饥枝50

public Histogram(){

this.count = new int[]{0,0,0,0,0};//默认count

repaint();

}

public Histogram(int[] count){

this.count = count;//传入count

repaint();

}

public void setHistogram(int[] count) {//设置count

this.count = count;

repaint();

}

@Override

protected void paintComponent(Graphics g) {

if (count == null) return; //如果没有数值就不绘制

super.paintComponent(g);

//设置五个拿敏方图显示的颜色不一样

Color[] color = {new Color(245,125,46),new Color(143,184,216),new Color(184,217,136),new Color(255,203,15),new Color(168,169,171)};

int width = getWidth();//方图的宽度

int height = getHeight();//方图的肢念高度

int interval = (width - 40) / count.length;//方图之间的间隔

int individualWidth = (int)(((width - 40) /5) * 0.60);//单个方图的宽度

int maxCount = 0;//方图的最大值,即高度

for (int i = 0; i count.length; i++) {//获得最大值

if (maxCount count[i])

maxCount = count[i];

}

maxCount+= 5 - maxCount%5;

//绘制背景

g.setColor(new Color(210,212,215));

g.fillRect(30, 30, width - 40, height - 75);

//绘制左边线、底边线和数

g.setColor(Color.BLACK);

g.drawLine(30, height - 45, width - 10, height - 45);//这条底边线重复,下面的for重画了

g.drawLine(30,30,30, height - 45);

g.drawString("数",5,15);//左上角写“数”字

//绘制六条行线和左边的数值标识

for(int i = 0, num = 45;i = maxCount;i+=maxCount/5){

g.drawString(i + "", 10,height-num );

g.drawLine(30, height - num, width - 10, height - num);

num +=((height-75)/5.0+0.3);

}

for (int i = 0; i count.length; i++) {

int barHeight =

(int)((count[i]/(maxCount/5.0))*((height-75)/5.0)-0.3);//获得在每个方图上方写数值的高度

// g.setColor(new Color(73,168,213));

//绘制方图

g.setColor(color[i]);

g.fillRect(x, height - 45 - barHeight, individualWidth,barHeight);

//在方图上方标识该数值

g.setColor(Color.black);

g.drawString(count[i]+"", x + individualWidth/2,height - 50 - barHeight);

//绘制底边的数值标识

g.setColor(Color.BLACK);

if(i==0){

g.drawString("60", x, height - 30);

}

else if(i==4){

g.drawString("90", x, height - 30);

}

else{

g.drawString((50+10*i) + "-" + (59+10*i) + "", x, height - 30);

}

x += interval;//保证了数值左边一定与方图左边线靠齐

}

}

}

求 JAVA语言 如何提取图像颜色特征和颜色直方图的方法

java.awt.Color 类用于封装默认 sRGB 颜色空间中的颜色,或者用于封装由 ColorSpace

标识的任意颜色空间中的颜色。每种颜色都有一个隐式的销丛坦 alpha 值 1.0,或者有一个在构造方法中提供的显式的 alpha 值。alpha

值定义了颜色的透明度,可用一个在 0.0 - 1.0 或 0 - 255 范围内的浮点值表示它。alpha 值为 1.0 或 255

则意味着颜色完全是不透明的,alpha 值为 0 或 0.0 则意味着颜色是完全透明的。在使用显式郑链的 alpha 值构造 Color

时,或者在获取某个 Color 的颜色/alpha 分量亏桐时,从不将颜色分量预乘 alpha 分量。

希望可以帮助到你.

如何使用Java和opencv来得到图像的H-S直方图?

//因为要计算H-S的直方图,所以需要得到一个HSV空间的图像

cvtColor(srcImage, hsvImage, CV_BGR2HSV);

imshow("【HSV空间的原图】"仔没, hsvImage);

//为计算直方图配置变量

//首先是需要计算的图像的通道,就是需要计算图像的哪个通道(bgr空间需要确定计算 b或g货r空间)

int channels[] = { 0, 1 };

//然后是配置输出的结果存储的 空间 ,用MatND类型来存储结果

MatND dstHist;

//接下来是直方图的每一个维度的 柱条的数目(就是将数值分组,共有多少组)

//如果这里写成int histSize = 256; 那么下面调用计算直方图念拆纳的函数的时候,该变量需要写 histSize

int histSize[] = { 30, 32 };

//最后是确定每个维度的取值范围,就是横坐标的总数

//首先得定御告义一个变量用来存储 单个维度的 数值的取值范围

float HRanges[] = { 0, 180 };

float SRanges[] = { 0, 256 };

const float *ranges[] = { HRanges, SRanges };


本文题目:java直方图打印代码 java图形打印
地址分享:http://bjjierui.cn/article/ddpgsoo.html

其他资讯