2011-12-22 62 views
5

我正在使用Telerik Kendo饼图,我希望能够为楔块着色。如何彩色Telerik Kendo UI饼图楔?

以下是标记为我的剑道UI饼图:

<script type="text/javascript"> 
function createChart() { 
    jQuery("#chart").kendoChart({ 
     theme: jQuery(document).data("kendoSkin") || "Metro", 
     legend: { 
      position: "bottom" 
     }, 
     seriesDefaults: { 
      labels: { 
       visible: true, 
       format: "{0}%" 
      } 
     }, 

     series: [{ 
      type: "pie", 
      data: [{ 
       category: "Remaining Work", 
       value: 75, 
       explode: true 
      }, { 
       category: "CIOs", 
       value: 2 
      }, { 
       category: "Other Executives", 
       value: 10 
      }, { 
       category: "Directors and Physicians", 
       value: 13 
      }] 
     }], 
     tooltip: { 
      visible: true, 
      format: "{0}%" 
     } 
    }); 
} 

jQuery(document).ready(function() { 
    setTimeout(function() { 
     createChart(); 

     // Initialize the chart with a delay to make sure 
     // the initial animation is visible 
    }, 400); 

    jQuery(document).bind("kendo:skinChange", function (e) { 
     createChart(); 
    }); 
}); 
</script> 

我想剩下的工作是浅灰色。我该如何做到这一点?

任何建议,将不胜感激。

回答

18

Kendo UI DataViz中,所有图表都支持通过seriesColors option覆盖主题颜色。该属性将采用十六进制颜色字符串的数组。例如:

$("#chart").kendoChart({ 
    ... 
    seriesColors: ["#7c7c7c", ... ] 
}); 
0
it is an implementation from server side would be very interesting on the concept of avoiding Similar shades..please look in to the below code which iam inserting to bind the pie chart with colors 
If Not radChart Is Nothing Then 
        radChart.PlotArea.EmptySeriesMessage.TextBlock.Text = strNoData 
        radChart.SkinsOverrideStyles = False 
        Dim seriesColors As Color() = {Color.Aqua, Color.Bisque, Color.Chartreuse, Color.Coral, Color.DarkCyan, Color.DarkKhaki, Color.DimGray, Color.Yellow, Color.LightGreen, Color.Magenta, Color.Orange, Color.Purple, Color.SaddleBrown, Color.Silver, Color.WhiteSmoke, Color.Violet, Color.RosyBrown, Color.Olive, Color.Navy, Color.IndianRed} 
        Dim seriesPalette As New Palette("seriesPalette", seriesColors, True) 
        radChart.CustomPalettes.Add(seriesPalette) 
        radChart.SeriesPalette = "seriesPalette" 
        radChart.DataBind() 
       End If