/** * Swap color schemes, to make sure, we don't use 2 colors in a same scheme continously * @return array() */ protected function swap_color_schemes() { if (empty(self::$cache_color_schemes)) { // swap colors from axis X => Y, Y => X $x = count($this->color_schemes[0][0]); $y = count($this->color_schemes[0]); $tmp = array(); foreach ($this->color_schemes as $y => $colors) { foreach ($colors as $x => $color) { $tmp[$x][$y] = $color; } } self::$cache_color_schemes = $tmp; } return self::$cache_color_schemes; }