PImage img = loadImage("robotmarko-g.jpg"); size(256, 256); background(255); loadPixels(); img.loadPixels(); int[] h = new int[256]; for (int y = 0; y < img.height; y++) for (int x = 0; x < img.width; x++) { int imgIndex = x + y * img.width; int r = int(brightness(img.pixels[imgIndex])); h[r]++; } int hMax = 0; for (int i = 0; i < 256; i++) if (h[i] > hMax) hMax = h[i]; stroke(0); for (int i = 0; i < 256; i++) line(i, height - 1, i, (height - 1) * (1 - (float) h[i] / hMax));