gute Zufallsfarben
Hallo,
ich möchte eine Grafik generieren. Einfach eine Kreisdiagramm mit den Kosten der jeweiligen Abteilung. Die Anzahl de abteilungen kann schwanken. Also mal 5, mal 20 und mal 18 Abteilungen. Ich kann natürlich einfach rand(0,255) nehmen. Nur dann kann es passieren, dass ich 3 Rottöne habe und 12 Blautöne, was nicht schön aussieht. Ich bräuchte also etwas mit genügend Abstand. Ich habe einen Ansatz: PHP-Code:
0,0,0, 7,7,7 14,14,14... Was ich vom Gefühl her bräuchte: 0,0,0 7,0,0 0,7,0 0,0,7 Als Test habe ich 12 Abteilungen, 256/12 =21 /3 Farben =7 als Quotient. Rot oder Grüntöne können natürlich mehrere sein und müssen bei entsprechender Anzahl auch sein (max 50 würde ich sagen), aber halt nicht nebeneinander. Soll ja kein Farbverlauf werden. Sonst passiert sowas: http://screencast.com/t/hv5B4DwfZ0K Und sowas wäre gut: http://screencast.com/t/FwEmxpryt6 |
AW: gute Zufallsfarben
Habe zwar nicht die einzig wahre Lösung, würde jedoch - wenn es um eine begrenzte Anzahl von Farben geht - mir die Mühe machen, neben den Grundfarben (Rot, Grün, Blau, Cyan, Magenta, Gelb, Weiß und Schwarz) noch eine beliebige Anzahl von selbst gewählten Farben als Strings in ein Array schreiben (zb. $color = array("0,0,0", ..., Wunschfarben, ... "255,255,255")) und bei Bedarf die benötige Anzahl von Elementen abfragen.
Vorteil: Du kannst die Farben nach Deinen Vorstellungen auswählen und auch sortieren. Oder Du schaust Dir mal die einschlägigen Bibliotheken, die Diagramme mittels PHP zeichnen (können), an. |
AW: gute Zufallsfarben
Vielen Dank!
Das habe ich auch schon gedacht. Allerdings habe ich dasselbe Problem, oder? Angenommen, ich nehme 150 Farben als Array. Dann brauche ich 12. Entweder hole ich mir 12 zufällige raus oder die ersten 12. Was ich suche oder mir vorschwebt ist sowas wie. $altefarbe=irgendeinehexzahl; $neuefarbe=$irgendeinehexzahl wenn $neuefarbe-$altefarbe <= 45 (Abstzamd) wähle andere farbe, sonst mache nichts. Das also zwischen den Zahlen genug Abstand ist. Oder OK, festlegen. Mehr als 100 werden es nie. Nur dann muss ich die Farben händisch im String/Array sortieren. Sonst habe ich uU zb 0,0,255 neben 5,10,245 und das sieht kein Mensch als Unterschied. Oder sowas wie Komplementärdarben. So dass man quasi 2 Arrays hat und dann immer wechselt... |
AW: gute Zufallsfarben
Ich habe nun eine Funktion gefunden:
PHP-Code:
|
AW: gute Zufallsfarben
Ok, habs mit ner Krücke gelöst. 30 Farbzahlen manuell in ein Array geschrieben und dabei auf die Reihenfolge geachtet.
Eigendlich suhe ich noch was eleganteres. Startfarbe, was weiß ich fffff und Komplemenärfarbe +30/50/56 Das als neue farbe usw. |
Alle Zeitangaben in WEZ +2. Es ist jetzt 10:34:33 Uhr. |
Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.