2013-12-12 1 views
0

사람들이 날짜별로 적용한 작업 수를 보여주기 위해 차트를 사용합니다.ASP.Net Webform 꺾은 선형 차트는 빈 이미지로 표시됩니다.

난 뒤에 그것을

<asp:Chart ID="chrtDateWise" runat="server" Width="500px"> 
     <Series> 
      <asp:Series ChartType="Line" Name="Series1"> 
      </asp:Series> 
     </Series> 
     <ChartAreas> 
      <asp:ChartArea Name="ChartArea1"> 
      </asp:ChartArea> 
     </ChartAreas> 
    </asp:Chart> 

코드를 표시하는 선 차트를 사용하고

protected void ShowDateWise() 
    { 
     String strSql = string.Empty; 
     strSql = "SELECT COUNT(ApplicationDate) AS Total, ApplicationDate FROM [Jobs] GROUP BY ApplicationDate, ApplicationDate order by ApplicationDate "; 

     DataSet ds = DataProvider.Connect_Select(strSql); 

     DataTable dt = ds.Tables[0]; 
     chrtDateWise.DataSource = dt; 
     chrtDateWise.Series["Series1"].XValueMember = "ApplicationDate"; 
     chrtDateWise.Series["Series1"].YValueMembers = "Total"; 

     //chrtDateWise.Series["Series1"]["PieLabelStyle"] = "Outside"; 
     chrtDateWise.Series["Series1"].ToolTip = "#VALY"; 
     chrtDateWise.Series["Series1"].Label = "#VALX"; 
     chrtDateWise.DataBind(); 

    } 

UPDATE : 내 코드를 변경

<asp:Chart ID="chrtDateWise" runat="server" Width="600px"> 
     <Series> 
      <asp:Series ChartType="Line" Name="Series1"> </asp:Series> 
     </Series> 
     <ChartAreas> 
      <asp:ChartArea Name="chrtAreaSupporters"> 
        <AxisY LineColor="White"> 
         <LabelStyle Font="Trebuchet MS, 8.25pt" /> 
         <MajorGrid LineColor="#e6e6e6" /> 
         <MinorGrid Enabled="false" LineColor="#e6e6e6" /> 
        </AxisY> 
        <AxisX LineColor="White"> 
         <LabelStyle Font="Trebuchet MS, 8.25pt" /> 
         <MajorGrid LineColor="#e6e6e6" /> 
         <MinorGrid Enabled="false" LineColor="#e6e6e6" /> 
        </AxisX> 
       </asp:ChartArea> 
     </ChartAreas> 
    </asp:Chart> 



chrtDateWise.Series["Series1"].ChartType = SeriesChartType.Line; 

    chrtDateWise.Series["Series1"].XValueMember = "Total"; 
    chrtDateWise.Series["Series1"].YValueMembers = "ApplicationDate"; 


    chrtDateWise.Series["Series1"].IsValueShownAsLabel = true; 


    chrtDateWise.Series["Series1"].BorderWidth = 3; 
    chrtDateWise.Series["Series1"].Color = System.Drawing.Color.Green; 

    chrtDateWise.Series["Series1"].YAxisType = AxisType.Secondary; 
,691,363 아래210

이 중 하나가 작동하지 않습니다 ...

쿼리가 테이블에서 데이터를 가져오고이 외에도 파이 차트를 표시 할 수 있으므로 코드의 문제점을 잘 모르겠습니다.

나는 차트 속성을 망쳤다 고 생각합니다. 아래의 코드에서 모든 것을 할 수와 같은 간단한 쿼리와

답변

1

:

<asp:Chart ID="Chart1" runat="server" DataSourceID="SqlDataSource1"> 
<Series> 
    <asp:Series Name="Series1" ChartType="Line" XValueMember="Total" 
     YValueMembers="ApplicationDate"> 
    </asp:Series> 
</Series> 
<ChartAreas> 
    <asp:ChartArea Name="ChartArea1"> 
    </asp:ChartArea> 
</ChartAreas> 
</asp:Chart> 
<asp:SqlDataSource ID="SqlDataSource1" runat="server" 
    ConnectionString="yourDbConnectionString" 
    SelectCommand="SELECT COUNT(ApplicationDate) AS Total, ApplicationDate FROM [Jobs] GROUP BY ApplicationDate, ApplicationDate order by ApplicationDate"> 
</asp:SqlDataSource> 

를 ConnectionString는 웹 구성의 속성, 그리고 그것을 쓰는으로 VisualStudio의 마법사 그러나 여기가,가 how to write it에 대한 안내입니다.

차트의 모습을 수정해야하는 경우, 당신은 아래 또는 코드 숨김에서 간단한 foreach는 사이클 코드에 속성을 추가 할 수

(codebelow)<asp:Series Name="Series1" ChartType="Line" BorderWidth="3" XValueMember="Total" 
     YValueMembers="orderdate"> 
    </asp:Series> 

(codebehind) 
foreach(Series s in Chart1.Series){ 
    s.BorderWidth=3; 
    s.IsValueShownAsLabel = true; 
    ... 
}