This is a port of the randomColor.js script created by David Merfield.
RandomColor generates attractive colors by default. More specifically, RandomColor produces bright colors with a reasonably high saturation. This makes randomColor particularly useful for data visualizations and generative art.
Get the code on GitHub
Once you have included RandomColor.class.php on your app, calling RandomColor::one($options)
or RandomColor::many($count, $options)
will return a random attractive color. Beneath is the live output of 36 generations.
RandomColor::many(36);
You can also pass an options object to randomColor. This allows you to specify the hue, luminosity and the format of colors to generate.
RandomColor::one(array('format'=>'hex')); // "#030c6d" RandomColor::one(array('format'=>'hsv')); // array('h'=>235,'s'=>97,'v'=>43) RandomColor::one(array('format'=>'hsl')); // array('h'=>235,'s'=>94.17,'l'=>22.145) RandomColor::one(array('format'=>'rgb')); // array('r'=>3.0,'g'=>12.0,'b'=>109.0) RandomColor::one(array('format'=>'hslCss')); // "hsl(235,94.17%,22.145%)" RandomColor::one(array('format'=>'rgbCss')); // "rgb(3,12,109)" RandomColor::one(array('format'=>'hexa')); // "#030c6d00" RandomColor::one(array('format'=>'hsva')); // array('h'=>235,'s'=>97,'v'=>43) RandomColor::one(array('format'=>'hsla')); // array('h'=>235,'s'=>94.17,'l'=>22.145,'a'=>NULL) RandomColor::one(array('format'=>'rgba')); // array('r'=>3.0,'g'=>12.0,'b'=>109.0,'a'=>NULL) RandomColor::one(array('format'=>'hslaCss')); // "hsla(235,94.17%,22.145%,)" RandomColor::one(array('format'=>'rgbaCss')); // "rgba(3,12,109,)"
RandomColor::many(18, array('hue'=>'red'));
RandomColor::many(18, array('hue'=>'orange'));
RandomColor::many(18, array('hue'=>'yellow'));
RandomColor::many(18, array('hue'=>'green'));
RandomColor::many(18, array('hue'=>'blue'));
RandomColor::many(18, array('hue'=>'purple'));
RandomColor::many(18, array('hue'=>'pink'));
RandomColor::many(18, array('hue'=>'monochrome'));
RandomColor::many(27, array('hue'=>array('blue', 'yellow')));
RandomColor::many(27, array('luminosity'=>'light'));
RandomColor::many(27, array('luminosity'=>'dark'));
RandomColor::many(36, array('luminosity'=>'random', 'hue'=>'random'));
RandomColor::many(18, array('format' => 'rgbaCss'));