Java 绘制直方图
我想画一个JPEG系数直方图Java 绘制直方图,java,image,jpeg,histogram,Java,Image,Jpeg,Histogram,我想画一个JPEG系数直方图 //coeff[] is the coefficients array int hist[]=new int[25]; for(int i=0;i<coeff.length;i++) hist[coeff[i]]++; 现在我想画一个类似条形图柱状图的历史数组,但我不知道有什么函数能做到这一点? 提前感谢当您有一个JFrame或类似的东西时,您可以覆盖paintGraphics g方法。然后您可以像这样绘制条形图: @Override public void
//coeff[] is the coefficients array
int hist[]=new int[25];
for(int i=0;i<coeff.length;i++)
hist[coeff[i]]++;
现在我想画一个类似条形图柱状图的历史数组,但我不知道有什么函数能做到这一点?
提前感谢当您有一个JFrame或类似的东西时,您可以覆盖paintGraphics g方法。然后您可以像这样绘制条形图:
@Override
public void paint(Graphics g)
{
super.paint(g);
final int barwidth = 20;
for(int i=0;i<25;i++){
g.fillRect(i*barwidth , 0, barwidth , hist[i]*10);
}
}
Histogram histogram = new Histogram();
add(histogram);
当回答您的问题时,请标记线程,谢谢。当您有JFrame或类似的东西时,您可以覆盖paintGraphics g方法。然后您可以像这样绘制条形图:
@Override
public void paint(Graphics g)
{
super.paint(g);
final int barwidth = 20;
for(int i=0;i<25;i++){
g.fillRect(i*barwidth , 0, barwidth , hist[i]*10);
}
}
Histogram histogram = new Histogram();
add(histogram);
当回答您的问题时,请标记线程,谢谢。看起来您甚至没有先尝试谷歌搜索。我看了JFreeChart,但不知道如何将数组添加为数据集?看起来您甚至没有先尝试谷歌搜索。我看了JFreeChart,但不知道如何将数组添加为数据集?嗯,我想在JLabel上显示直方图,这怎么可能呢?那么您必须从JLabel中创建子类,并在那里重写paint方法。啊,很抱歉,您必须重写paintComponent方法。感谢riv333,但我的应用程序的主框架中有很多JLabel,如何指定例如Jlabel5在其上显示直方图?我不确定我是否正确理解了你的问题。但我认为在现有标签中添加标签直方图不是一个好主意。为什么不创建一个Histogram类的实例,并将其放在您的大型机上,仅此而已。好吧,我想在JLabel上显示直方图,这怎么可能?那么您必须从JLabel中创建子类并在那里重写paint方法。啊,很抱歉,您必须重写paintComponent方法。谢谢riv333,但是我的应用程序的主框架中有很多JLabel,如何指定例如Jlabel5来显示直方图?我不确定我是否正确理解了你的问题。但我认为在现有标签中添加标签直方图不是一个好主意。为什么不创建一个Histogram类的实例并将它们放在您的大型机上呢。