2016-02-07 3 views
0

Я пытаюсь отобразить значения оси 2 y в диаграмме ASP.NET. Я могу отобразить обе оси y, которые я ожидаю увидеть, но я не могу их разделить на разные цвета.ASP.NET Диаграмма 2y оси цвета штрихового кода

AxisY Название = "Loonies" - Я вижу их. AxisY2 Title = "Toonies" - Я вижу их. Проблема состоит в том, что столбцы в столбце и на гистограмме отображаются как один и тот же цвет. Я пробовал разные вещи и искал google для решений в течение нескольких часов, но я действительно застрял. Любая помощь будет принята с благодарностью.

ASPX код

<asp:Label ID="lblChartType" runat="server" Text="Select Chart Type" Width="130"> </asp:Label> 
     <asp:DropDownList ID="ddlChartType" runat="server" AutoPostBack="True"> 
      <asp:ListItem Text="Line Graph" Value="Line"></asp:ListItem> 
      <asp:ListItem Text="Bar Graph" Value="Bar"></asp:ListItem> 
      <asp:ListItem Text="Column" Value="Column"></asp:ListItem> 
     </asp:DropDownList> 
     <br /><br /> 
     <asp:Chart ID="Chart1" runat="server" Height="275px" Width="500px"> 
      <Titles><asp:Title Text="Coin Levels % (Last 24 Hours)" /></Titles> 
      <Series> 
      <asp:Series Name="Series1"> 
      </asp:Series> 
      </Series> 
      <ChartAreas> 
       <asp:ChartArea Name="ChartArea1" > 
        <AxisX Title="Time"> </AxisX> 
        <AxisY Title="Loonies"> </AxisY> 
        <AxisY2 Title="Toonies"></AxisY2> 
       </asp:ChartArea> 

       </ChartAreas> 
     </asp:Chart> 
    </center> 

CS код общественная частичный класс Графика: System.Web.UI.Page { совместно используемый з = новая общие();

protected void Page_Load(object sender, EventArgs e) 
{ 
    Chart1.Series["Series1"].ChartType = (SeriesChartType)Enum.Parse(typeof(SeriesChartType), ddlChartType.SelectedValue); 
    GetChartData(); 
} 

private void GetChartData() 
{ 
    try 
    { 
     using (SqlConnection con = new SqlConnection(s.CS)) 
     { 
      SqlCommand cmd = new SqlCommand("hiddenSP", con); 
      cmd.CommandType = CommandType.Text; 
      cmd.CommandText = "hiddenSP"; 
      Series series = Chart1.Series["Series1"]; 
      Chart1.Series[0].XValueType = ChartValueType.Time; 
      Chart1.ChartAreas[0].AxisX.LabelStyle.Format = "HH:mm"; 

      con.Open(); 
      SqlDataReader rdr = cmd.ExecuteReader(); 
      while (rdr.Read()) 
      { 
      series.Points.AddXY(rdr["NEWSTAMP"].ToString().Replace("2016", "").Trim(), rdr["Loonies"].ToString().Replace("%","").Trim()); 
       series.Points.AddXY(rdr["NEWSTAMP"].ToString().Replace("2016", "").Trim(), rdr["Toonies"].ToString().Replace("%", "").Trim()); 

      } 
     } 
    } 
    catch (Exception ex) 
    { 
     s.WebError(ex); 
    } 
} 
} 

ответ

0

Проблема решена!

foreach (var item in Chart1.Series[0].Points) 

      { 
       if (x==0) 
       { 
        Color c = Color.FromArgb(255, 0, 0); 
        item.Color = c; 
        x++; 
       } 
       else 
       { 
        Color c = Color.FromArgb(0, 0, 255); 
        item.Color = c; 
        x = 0; 
       } 
Смежные вопросы