[英]WPF Toolkit Pie Chart Style Colors
我想為PieChart中的每個Pie Slice在代碼背后設置顏色。 誰知道怎么做? 現在它從樣式xaml獲取顏色,但是我需要自己從代碼隱藏中為每個值(餅圖切片)分配顏色。
不知道這是否是最好的方法,但是我在同樣的事情上苦苦掙扎,最終使它像這樣工作。
聲明一個調色板:
System.Windows.Controls.DataVisualization.ResourceDictionaryCollection pieSeriesPalette = new System.Windows.Controls.DataVisualization.ResourceDictionaryCollection();
然后使用顏色信息創建一個或多個畫筆:
Brush currentBrush = new SolidColorBrush(Color.FromRgb(128, 128, 128)); //Grey
用每個畫筆創建一個新樣式,並將其添加到調色板集合中:
System.Windows.ResourceDictionary pieDataPointStyles = new ResourceDictionary();
Style stylePie = new Style(typeof(PieDataPoint));
stylePie.Setters.Add(new Setter(PieDataPoint.BackgroundProperty, currentBrush));
pieDataPointStyles.Add("DataPointStyle", stylePie);
pieSeriesPalette.Add(pieDataPointStyles);
請注意,必須將每個畫筆(或調色板條目)創建為新的ResourceDictionary對象。 如果創建10個畫筆並將它們全部添加到同一ResourceDictionary中,則該餅圖將僅使用第一種顏色。 (或者也許我只是做錯了什么)。
然后將圖表調色板設置為自定義調色板:
this.yourChartsName.Palette = pieSeriesPalette;
僅當您要自定義調色板以使用特定顏色時,此功能才有用。 對於顏色范圍或固定的顏色列表,我相信您可以在XAML中定義調色板。 希望能幫助到你。
一種可能性是用HSL或HSV構造顏色,保持SL / SV部分固定,可以將整個色相范圍划分為餅圖的數量,這應確保它們在視覺上合理地分開。 不同的SL / SV值將使圖表具有鮮明的色彩,粉彩或深色陰影等。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.