2009-07-30 8 views
1

Ich versuche, die Farbe der einzelnen Punkte in einem Excel-Scatterplot durch C#, aber es kann nicht funktionieren. Hier ist der Code, den ich gerade verwende. Beachten Sie, dass der MarkerStyle- und der MarkerSize-Teil des Codes funktionieren - mein Problem betrifft also wirklich die Farbe. Ich vermute, dass ich irgendwo eine Besetzung vermisse.Wie stelle ich die Farbe eines einzelnen Punktes in einem Excel-Scatterplot mit .NET ein?

var punkt = (Excel.Point) series.Points (index);

point.MarkerStyle = XlMarkerStyle.xlMarkerStyleSquare; Punkt.Markergröße = 8;

point.MarkerBackgroundColor = 10; point.MarkerForegroundColor = 10;

Vielen Dank im Voraus für jede Einsicht!

Antwort

1

Es sieht so aus, als ob Sie erwarten, einen Farbindex anstelle eines RGB zu setzen (ich sage das, weil Sie es auf 10 setzen). Ich glaube, dass MarkerForegroundColor eine RGB-Farbe erwartet. Wollten Sie MarkerForegroundColorIndex setzen?

+0

Vielen Dank, Sie haben völlig Recht: Ein RGB-Code wird erwartet. Ich dachte, das schade, weil die Werte, die ich verwendete, zu klein waren, und alles sah für mich schwarz aus. Das Design und/oder die Dokumentation dieser Schnittstelle ist wirklich verblüffend; MarketBackgrounColorIndex erwartet einen XlColorIndex, der 2 Werte annehmen kann (automatisch oder keine), also frage ich mich, wie man die Standardindizes verwendet ... – Mathias

+0

Die Farbindexeigenschaften sind Indizes in der 56 Farbenpalette in Excel. Dies ist eine alte Sache - Excel 2003 und frühere Versionen waren auf eine 56-Farben-Palette beschränkt. Excel 2007 kann 24-Bit-RGB-Farben verarbeiten, sodass Sie MarkerForegroundColor besser auf das gewünschte RGB einstellen sollten, wenn Ihre Benutzer Excel 2007 verwenden. –

Verwandte Themen