Как установить текст по оси Y вместо чисел в компоненте RadChart из Telerik с типом Bar - PullRequest
0 голосов
/ 25 мая 2010

Я сделал панель RadChart с "SeriesOrientation =" Horizontal "".

У меня есть текст, отображаемый в конце каждого столбца, но вместо этого я хотел бы, чтобы этот текст был помещен в список по оси Y вместо 1,2,3 .. чисел.

Кажется, мне не разрешено устанавливать какой-либо текст по оси y, есть ли свойство, которое я могу установить?

Вот мои фрагменты кода: === .ascx ===

    <div>
        <asp:ScriptManager ID="ScriptManager" runat="server" />

        <asp:UpdatePanel  ID="UpdatePanel1" runat="server">
            <ContentTemplate>
                <telerik:RadChart ID="RadChart1" runat="server"
                    Skin="WebBlue" AutoLayout="true" Height="350px" Width="680px" SeriesOrientation="Horizontal">
                    <Series>
                        <telerik:ChartSeries DataYColumn="UnitPrice" Name="Product Unit Price">
                        </telerik:ChartSeries>
                    </Series>
                    <PlotArea>
                        <YAxis>
                            <Appearance>
                                <TextAppearance TextProperties-Font="Verdana, 8.25pt, style=Bold" />
                            </Appearance>
                        </YAxis>
                        <XAxis DataLabelsColumn="TenMostExpensiveProducts">
                        </XAxis>
                    </PlotArea>
                    <ChartTitle>
                        <TextBlock Text="Ten Most Expensive Products" />
                    </ChartTitle>
                </telerik:RadChart>
            </ContentTemplate>
        </asp:UpdatePanel>
</div>

=========================

=== .ascx ===
        protected void Page_Load(object sender, EventArgs e)
        {
            RadChart1.AutoLayout = false;
            RadChart1.Legend.Visible = false;

            // Create a ChartSeries and assign its name and chart type
            ChartSeries chartSeries = new ChartSeries();
            chartSeries.Name = "Name";
            chartSeries.Type = ChartSeriesType.Bar;

            // add new items to the series,
            // passing a value and a label string
            chartSeries.AddItem(98, "Product1");
            chartSeries.AddItem(95, "Product2");
            chartSeries.AddItem(100, "Product3");
            chartSeries.AddItem(75, "Product4");
            chartSeries.AddItem(1, "Product5");

            // add the series to the RadChart Series collection
            RadChart1.Series.Add(chartSeries);
            // add the RadChart to the page.
            //                this.Page.Controls.Add(RadChart1);

            //            RadChart1.Series[0].Appearance.LegendDisplayMode = ChartSeriesLegendDisplayMode.Nothing;
            //            RadChart1.Series[0].DataYColumn = "Uptime";
            RadChart1.PlotArea.XAxis.DataLabelsColumn = "Name";
            RadChart1.PlotArea.XAxis.Appearance.TextAppearance.TextProperties.Font = new System.Drawing.Font("Verdana", 8);
            RadChart1.BackColor = System.Drawing.Color.White;
            RadChart1.Height = 350;
            RadChart1.Width = 570;
            RadChart1.DataBind();
        }

============ Я хочу иметь текст: «Product1», «Product2» и т. Д. По оси Y.

Может кто-нибудь помочь?

1 Ответ

1 голос
/ 25 мая 2010

Вам необходимо связать диаграмму - установите свойство DataSource и вызовите DataBind (). Вам не нужно будет вызывать chartSeries.AddItem (). DataBind () добавит элементы для вас. Источником данных может быть DataTable с двумя столбцами - «UnitPrice» и «TenMostExорогоProducts». Смотрите, это имена, которые вы установили для DataYColumn в серии и DataLabelsColumn в XAxis.

...