Entwickler-Ecke
WinForms - MS Charts Farben ändern
Ivy - Mi 27.04.11 10:43
Titel: MS Charts Farben ändern
Hallo zusammen,
ich hab ein Problem mit dem einfärben meiner Balken im Chart. Ich möchte dass jeder Balken eine andere Farbe hat. Mit diesem Befehl müsste es meiner meinung nach auch funktionieren:
C#-Quelltext
1:
| chart1.Series[0].Points[i].Color = Color.Yellow; |
i ist in meiner for schleife definiert und zählt die datensätze hoch wenn noch welche existieren..
mein chart wird so erstellt(eine schleife ist noch drum rum, die prüft wann keined aten mehr vorhanden sind...)
C#-Quelltext
1:
| chart1.Series[0].Points.AddXY(DatenX, DatenY); |
das problem is alle balken sind bei mir dann in der gleichen farbe... warum sind nicht alle in einer anderen?
bakachan - Mi 27.04.11 10:53
Die Farbänderung an sich funktioniert also wird dein Fehler in einem anderen Teil des Codes liegen.
Ivy - Mi 27.04.11 10:55
ja ansich funktioniert sie. ich habe schon gedacht weil ich bei series ja immer 0 drin stehen habe daher die einzelen balekn nicht unterschieden werden??!
bakachan - Mi 27.04.11 10:58
Ich sehe gerade du hast oben editiert.
Du greifst also auch per Index auf den Point zu.. ich nehme an du hast da eine entsprechende Schleife aus der der index kommt die alle durchläuft? Das würde erklären warum bei dir alle Balken gelb werden.
edit:
ja nach deinem edit sieht mans ja deutlich du setzt für ALLE Points den Balken auf Gelb (steht ja da Color.Yellow)
Ivy - Mi 27.04.11 11:03
ja das war ja schon meine vermutung, aber ich wie mache ich es dass jeder eine andere farbe bekommt??
bakachan - Mi 27.04.11 11:08
Entweder du lässt dir etwas einfallen wie die Farben sich abwechseln sollen und setzt es in deiner Schleife einfach per Variable (die du danach auf die nächste Farbe setzen lässt) oder du verwendest etwas vorgegebenes.
z.B. hat die Series eine Eigenschaft "Palette" durch die eine unterschiedliche Einfärbung der einzelnen Balken umgesetzt wird.
edit: die Farben wiederholen sich aber nach einem gewissen Abstand
Ivy - Mi 27.04.11 11:11
plaette hab ich auch schon versucht, da wird auch alles in der selben farbe -.-
bakachan - Mi 27.04.11 11:15
Vielleicht solltest du erstmal alle anderen Eigenschaften auf die Standardwerte zurücksetzen.
Wenn in den Points eine andere Color gesetzt ist funktioniert Palette natürlich nicht (da du es mit den anderen Color-Angaben explizit überschreibst).
Es kann auch sein das sich das Verhalten bei anderen ChartTypes ändert aber da du keine Angabe gemacht hast gehe ich einfach vom Standard "Column" aus.
Ivy - Mi 27.04.11 11:48
jetzt funktierts... jedoch haben meine x achsen jetzt keine beschriftung mehr.
ich habe jetzt für jeden wert eine neue serie erstellt. aber es kommt als beschriftung immer nur der name des ersten wertes. woran liegt das?
bakachan - Mi 27.04.11 11:54
Wieso erstellst du jetzt auf einmal für jeden Punkt eine neue Serie? Das ergibt doch keinen Sinn.
Ivy - Mi 27.04.11 11:58
weil es anders mit den farben nicht funtioniert hat^^ aber so hab ich auf der x achse keine beschriftung mehr :/
bakachan - Mi 27.04.11 12:30
Natürlich geht es anders mit den Farben.
Ganz normal 1 Series, an der Series die entsprechende Palette eingestellt und schon funktionierts.
Und wegen deinen fehlenden Beschriftungen an der X-Achse:
kann es sein das du unterschidliche Datentypen als Beschriftung nimmst? dann würde er ausblenden.
Ivy - Mi 27.04.11 13:11
upps.. das stimmt damit funktionierts^^ manchmal kann alles so einfach sein xD
danke
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!