A small Python script to generate random color sequences, e.g. for use in plotting. Just call the "generate_new_color(existing_colors,pastel_factor)" function to generate a random color that is (statistically) maximally different from all colors in "existing_colors". The "pastel_factor" parameter can be used to specify the "pasteliness"(?) of th…
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters import random def get_random_color(pastel_factor = 0.5): return [(x+pastel_factor)/(1.0+pastel_factor) for x in [random.uniform(0,1.0) for i in [1,2,3]]] def color_distance(c1,c2): return sum([abs(x[0]-x[1]) for x in zip(c1,c2)]) def generate_new_color(existing_colors,pastel_factor = 0.5): max_distance = None best_color = None for i in range(0,100): color = get_random_color(pastel_factor = pastel_factor) if not existing_colors: return color best_distance = min([color_distance(color,c) for c in existing_colors]) if not max_distance or best_distance > max_distance: max_distance = best_distance best_color = color return best_color #Example: if __name__ == '__main__': #To make your color choice reproducible, uncomment the following line: #random.seed(10) colors = [] for i in range(0,10): colors.append(generate_new_color(colors),pastel_factor = 0.9) print "Your colors:",colorsRetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4