2015-06-29 18 views
0

當makeing一個PieSeries將圖表與Telerik的:RadHtmlChart如何爲RadHtmlChart動態添加DataFieldY值?

是否有可能,如果是你會怎麼設置DataFieldY屬性拳頭列的名稱在一個Excel上傳?

<telerik:RadHtmlChart runat="server" ID="RadHtmlChart1" Transitions="false" Width="450" 
    Height="450" Skin="Silk"> 
    <Legend> 
     <Appearance Visible="false"></Appearance> 
    </Legend> 
    <PlotArea> 
     <Series> 
      <telerik:PieSeries DataFieldY="Number" NameField="Fruit" ExplodeField="IsExploded"> 
      </telerik:PieSeries> 
     </Series> 
    </PlotArea> 
</telerik:RadHtmlChart> 

這需要通過客戶端綁定來完成。

public string chartData = "[{'Fruit': 'Apple','Number': 8, 'Color': 'Blue'},{'Fruit': 'Orange','Number': 4, 'Color': 'Purple'},{'Fruit': 'Banana','Number': 3, 'Color': 'Red'},{'Fruit': 'Grapes','Number': 12, 'Color': 'Pink'},{'Fruit': 'Peace','Number': 2, 'Color': 'Orange'}]"; 

var jsonChartData = "<%=chartData%>"; 

        var RadHtmlChart1 = $find('<%=RadHtmlChart1.ClientID %>'); 
        RadHtmlChart1.set_dataSource(jsonChartData); 
        RadHtmlChart1.set_transitions(true); 
        RadHtmlChart1.repaint(); 

回答

1

你不能直接這樣做。該控制可以與多個數據源的工作:

  • JSON文字的JavaScript數組(如你已經粘貼)

  • IEnumerable集合(通過類似的SqlDataSource聲明性數據源控件提供的;或一個清單;或數據表,你會明白)

Excel文件既不是。

您將需要以某種方式解析Excel文件來得到所需的集合: