Vorgehensweise: Angeben von Farben, die für mehrere Formdiagramme konsistent sind (Report Builder 3.0 und SSRS)
Bei anderen Diagrammen als Formdiagrammen wird eine neue Farbe anhand des Indexes von Reihen im Diagramm ausgewählt. Beispielsweise wird die erste Reihe im Diagramm der ersten Farbe in der Palette zugeordnet. Formdiagramme weisen jedoch ein anderes Verhalten auf. Bei Formdiagrammen wird jede Farbe in der Palette einem Datenpunkt im Dataset zugeordnet. Beispielsweise wird Datenpunkt 1 der ersten Farbe in der Palette zugeordnet, Datenpunkt 2 wird der zweiten Farbe in der Palette zugeordnet usw.
Wenn ein Datenpunkt keinen Wert aufweist, wird er nicht im Formdiagramm angezeigt. Dies bedeutet, dass dem Datenpunkt keine Farbe zugewiesen wird. Wenn beispielsweise Punkt 2 den Wert 0 (null) aufweist, wird Punkt 1 der ersten Farbe in der Palette und Punkt 3 der zweiten Farbe in der Palette zugeordnet. Dieses Prinzip weist den Vorteil auf, dass für leere Punkte im Dataset eines Kreisdiagramms nicht unnötigerweise eine Palettenfarbe verwendet wird, wenn die leeren Punkte nicht gezeichnet werden müssen.
Als Nebeneffekt werden möglicherweise in einem Bericht, in dem mehrere Kreisdiagramme angezeigt werden, in den Kreisdiagrammen unterschiedliche Farben für Datenpunkte angezeigt, die derselben Kategoriegruppe angehören. Um dieses Problem zu lösen, müssen Sie einzelne Farben definieren, die nicht einzelnen Datenwerten, sondern einer Kategoriegruppe zugeordnet sind. Die Vorgehensweise hängt hierbei davon ab, ob die Formdiagramme Sparklines in einer Tabelle oder Matrix sind, oder ob sie Formdiagramme im Bericht selbst sind.
Die Legende ist mit der Reihe verknüpft. Daher wird jede Farbe, die Sie für die Reihe angeben, automatisch in der Legende angezeigt.
Hinweis |
---|
Sie können Berichtsdefinitionen (RDL) in Berichts-Generator 3.0 und im Berichts-Designer in Business Intelligence Development Studio erstellen und ändern. Jede Erstellungsumgebung bietet verschiedene Methoden zum Erstellen, Öffnen und Speichern von Berichten und verwandten Elementen. Weitere Informationen finden Sie unter Entwerfen von Berichten in Berichts-Designer und Berichts-Generator 3.0 (SSRS) im Web auf microsoft.com. |
So legen Sie konsistente Farben für mehrere Sparkline-Formdiagramme in einer Tabelle oder einer Matrix fest
Klicken Sie zum Anzeigen des Bereichs Diagrammdaten auf das Diagramm.
Klicken Sie im Beriech Kategoriegruppen mit der rechten Maustaste auf eine Kategorie, und klicken Sie dann auf Kategoriegruppeneigenschaften.
Klicken Sie auf der Registerkarte Allgemein im Feld Gruppen synchronisieren in auf den Namen der Kategorie, für die die Farben synchronisiert werden sollen, und klicken Sie dann auf OK.
So geben Sie konsistente Farben für mehrere Formdiagramme an
Klicken Sie mit der rechten Maustaste außerhalb des Hauptteils des Berichts, und wählen Sie Berichtseigenschaften aus.
Geben Sie in Code den folgenden Code in das Textfeld ein.
Private colorPalette As String() = {"Color1", "Color2", "Color3"} Private count As Integer = 0 Private mapping As New System.Collections.Hashtable() Public Function GetColor(ByVal groupingValue As String) As String If mapping.ContainsKey(groupingValue) Then Return mapping(groupingValue) End If Dim c As String = colorPalette(count Mod colorPalette.Length) count = count + 1 mapping.Add(groupingValue, c) Return c End Function
Hinweis Sie müssen die Zeichenfolgen "Color1", "Color2" usw. durch eigene Farben ersetzen. Sie können benannte Farben, z. B. "Red", verwenden, oder Sie können einen sechsstelligen Hexadezimalwert verwenden, der die Farbe darstellt, z. B. "#FFFFFF" für Schwarz. Wenn mehr als drei Farben definiert sind, müssen Sie das Array der Farben so erweitern, dass die Anzahl der Farben im Array mit der Anzahl von Punkten im Formdiagramm übereinstimmt. Sie können dem Array neue Farben hinzufügen, indem Sie eine durch Trennzeichen getrennte Liste von Zeichenfolgenwerten angeben, die benannte Farben oder hexadezimale Darstellungen von Farben enthalten.
Klicken Sie auf OK.
Klicken Sie mit der rechten Maustaste auf das Formdiagramm, und wählen Sie Reiheneigenschaften aus.
Klicken Sie unter Ausfüllen auf die Schaltfläche Ausdruck (fx), um den Ausdruck für die Eigenschaft Farbe zu bearbeiten.
Geben Sie den folgenden Ausdruck ein, wobei "MyCategoryField" das Feld ist, das im Bereich Kategoriegruppen angezeigt wird:
=Code.GetColor(Fields!MyCategoryField)
Siehe auch