2017-01-30 1 views
1

Es ist sehr schwierig für mich, auf Englisch zu erklären. Derzeit habe ich ein Diagramm wie das folgende Bild erstellt.C# Fast Line Chart

My Chart

mit diesem Code:

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(); 
} 

Aber ich will Ich weiß nicht, yValue als Beschreibung im Bild angezeigt werden, was es bezeichnet. (Siehe Abbildung unten)

Hier ist das Diagramm, das ich will:

The Chart which i want

Ich habe versucht, auf Google zu suchen, aber es noch nicht tun kann. Es tut mir wirklich leid für mein schlechtes Englisch.

Hoffe jemand kann mir helfen.

+0

haben einen Blick auf [diese] (http://stackoverflow.com/questions/13839359/display-values-on-bars-of-a-bar-chart-in-asp-net) –

+0

Vielen Dank, Mong Zhu –

Antwort

2

Sie müssen zu ChartType.Line wechseln.

Es gibt bestimmte restrictions for FastLine charts:

Die Fastline Diagrammtyp eine Variation der Liniendiagramm ist, dass signifikant die Zeichnung Zeit einer Serie reduziert, die eine sehr große Anzahl von Datenpunkten enthält. Verwenden Sie dieses Diagramm in Situationen, in denen sehr große Datensätze verwendet werden und die Rendergeschwindigkeit sehr kritisch ist.

Einige Diagrammfunktionen werden aus dem FastLine-Diagramm weggelassen, um die Leistung zu verbessern. Die weggelassenen Funktionen umfassen die Steuerung von Punktwerten visuellen Attributen, Markierungen, Datenpunktbeschriftungen und Schatten.

Dies ist von Entwurf, um die Zeichnung schnell zu halten. Anders als Leistung und diese Beschränkungen sie gleich sind, dh sie gleich aussehen wird ..

Jetzt können Sie ihre Werte entweder

yourSeries.IsValueShownAsLabel = true; 

für eine ganze Seriesoder einige Werte holen und zeigen einstellen als Labels:

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

Vielen Dank. Ich bin bereits zu Liniendiagramm gewechselt. –