2017-01-30 1 views
1

영어로 설명하기가 어렵습니다. 현재 아래 그림과 같이 차트를 만들었습니다. 이 코드 C# 빠른 라인 차트

My Chart

:

public void CreateChart(DataTable chartTable ,string serieName) 
{ 

    var chartArea = new ChartArea(); 
    chartArea.AxisX.LabelStyle.Format = "dd/MM/yyy"; 
    chartArea.AxisX.MajorGrid.LineColor = Color.LightGray; 
    chartArea.AxisY.MajorGrid.LineColor = Color.LightGray; 
    chartArea.AxisX.LabelStyle.Font = new Font("Consolas", 6); 
    chartArea.AxisY.LabelStyle.Font = new Font("Consolas", 6); 
    chart1.ChartAreas.Add(chartArea); 


    var series = new Series(); 
    series.Name = "TEMP_STACK_BOILER_1"; 
    series.ChartType = SeriesChartType.FastLine; 
    series.XValueType = ChartValueType.DateTime; 
    series.YValueType = ChartValueType.Double; 
    chart1.Series.Add(series); 



    int lastrow = chartTable.Rows.Count - 4; 

    string[] xval = new string[lastrow]; 
    int[] yval = new int[lastrow]; 


    // bind the datapoints 

    chart1.ChartAreas[0].AxisY.Maximum = 1000; 
    chart1.ChartAreas[0].AxisY.Minimum = 0; 

    for (int i = 0; i < lastrow; i++) 
    { 
     xval[i] = chartTable.Rows[i][1].ToString() + "\r\n" +chartTable.Rows[i][0].ToString() ; 
     yval[i] = Convert.ToInt32(chartTable.Rows[i][serieName]);   
    } 

    chart1.Series[serieName].Points.DataBindXY(xval, yval); 
    chart1.Invalidate(); 
} 

는하지만 나는 그것이라는 것을 모르는 그림 의 설명에 Yvalue을 표시합니다. 내가 구글에서 검색을 시도하지만

The Chart which i want

여전히 그것을 할 수 없습니다 : 여기

내가 원하는 차트입니다 (아래 그림 참조). 나쁜 영어로 정말 유감입니다.

누구든지 나를 도울 수 있기를 바랍니다.

+0

[이] 위치에있는 모양 (http://stackoverflow.com/questions/13839359/display-values-on-bars-of-a-bar-chart-in-asp-net을) –

+0

정말 고마워요, 몽 주 –

답변

2

ChartType.Line으로 전환해야합니다.

restrictions for FastLine charts 특정 있습니다

FastLine 차트 유형이 크게 데이터 포인트의 매우 많은 수를 포함하는 일련의 드로잉 시간을 단축하는 선 차트의 변형입니다. 매우 큰 데이터 세트가 사용되고 렌더링 속도가 중요한 상황에서이 차트를 사용하십시오.

성능을 향상시키기 위해 FastLine 차트에서 일부 차트 기능이 생략되었습니다. 지형지 물 속성, 마커, 데이터 포인트 레이블 및 그림자 등 포인트 수준 제어가 생략되었습니다.

이것은 도면을 빠르게 유지하기위한 의도적 인 동작입니다.

지금 당신이 어떤 값을 선택 전체 Series 또는에 대한 중 하나

yourSeries.IsValueShownAsLabel = true; 

을 설정하고 그 값을 표시 할 수 있습니다 .. 성능과 그들이 모두 보이는 것, 즉 그들이 동일 그 제한 이외에 Labels 같이

yourSeries.Points[someIndex].IsValueShownAsLabel = true; 
+0

대단히 감사합니다. 나는 이미 Line Chart로 전환했다. –