MS Chart настраивает метку значения и рисует ряды линий в области графика - PullRequest
1 голос
/ 25 августа 2010

Я хотел бы получить предложение как на C #, так и на VB.NET

Я создал диаграмму, как на следующем рисунке:

alt text

  1. Как настроить значение в верхней части каждого столбца из-за кода?Вместо показа 21, 49, 19 я хотел бы показать 21 час, 49 часов, 19 часов

  2. Как я могу показать эти значения поверх других строк?Как вы можете видеть, 19 находится ниже серии Линия.

  3. Можно ли установить рисование линии в области диаграммы, а не только в столбце?Таким образом, линия будет начинаться от оси X до конца области диаграммы.

Вот разметка:

 <asp:chart id="Chart1" runat="server" Height="296px" Width="500" ImageLocation="~/TempChartFiles/ChartPic_#SEQ(300,3)" Palette="BrightPastel" imagetype="Png" BorderDashStyle="Solid" BackSecondaryColor="White" BackGradientStyle="TopBottom" BorderWidth="2" backcolor="#D3DFF0" BorderColor="26, 59, 105">
                    <legends>
                        <asp:Legend IsTextAutoFit="False" Name="Default" BackColor="Transparent" Font="Trebuchet MS, 8.25pt, style=Bold"></asp:Legend>
                    </legends>
                    <borderskin skinstyle="Emboss"></borderskin>
                    <series>
                        <asp:Series Name="Month" BorderColor="180, 26, 59, 105" IsValueShownAsLabel="true">
                        </asp:Series>
                    </series>
                    <chartareas>
                        <asp:ChartArea Name="ChartArea1" BorderColor="64, 64, 64, 64" BorderDashStyle="Solid" BackSecondaryColor="White" BackColor="64, 165, 191, 228" ShadowColor="Transparent" BackGradientStyle="TopBottom">
                            <area3dstyle Rotation="10" perspective="10" Inclination="15" IsRightAngleAxes="False" wallwidth="0" IsClustered="False"></area3dstyle>
                            <axisy linecolor="64, 64, 64, 64">
                                <labelstyle font="Trebuchet MS, 8.25pt, style=Bold" />
                                <majorgrid linecolor="64, 64, 64, 64" />
                            </axisy>
                            <axisx linecolor="64, 64, 64, 64">
                                <labelstyle font="Trebuchet MS, 8.25pt, style=Bold" />
                                <majorgrid linecolor="64, 64, 64, 64" />
                            </axisx>
                        </asp:ChartArea>
                    </chartareas>
                </asp:chart>

Вот код позади:

Chart1.ChartAreas ("ChartArea1"). AxisX.Interval = 1

    ' Create new data series and set its visual attributes
    Dim series As New Series("Minimum Hour")

    series.ChartType = SeriesChartType.Line
    series.BorderWidth = 2
    series.ShadowOffset = 1
    series.AxisLabel = 0


    Dim monthyHour = 22
    series.Name = "Min. Hour : " & monthyHour

    Dim xValue() As String = {"Jun", "Jul", "Aug"}
    Dim yValue() As Integer = {21, 49, 19}

    'add value for Line series
    For i = 0 To xValue.Length - 1 Step 1

         series.Points.AddY(monthyHour)

    Next

    Chart1.Series(0).Points.DataBindXY(xValue, yValue)

    ' Add series into the chart's series collection
    Chart1.Series.Add(Series)

1 Ответ

2 голосов
/ 20 сентября 2010

Чтобы добавить его из кода, вам нужно установить Chart1.Series (0) .Label = monthyHour + "Hrs"

...