Frage

Ich verwende den Microsoft Chart Controls für .NET 3.5 und habe Schwierigkeiten mit dem Chart-Steuerelement immer Fenster und Steuergrößenanpassung zu unterstützen.

Ich habe Graphen, in denen der X-Wert Daten, und will das Diagramm das Maximum auf der Diagrammachse verfügbar von Intervallen / Labels anzuzeigen, wenn ich die Größe des Fensters.

Der nächstgelegene ich gekommen bin ist dies aus dem Voranstrich Ereignis aufzurufen:

double interval = chart.Series[0].Points.Count / ((double)chart.Width / 90);
foreach (var area in chart.ChartAreas.Where(ca => ca.Visible))
{
    area.AxisX.Interval = interval;
}

Dies macht die Intervalle und Etiketten perfekt entlang der X-Achse passen, aber die Daten werden nicht korrekt dargestellt. Das erste Etikett scheint richtig zu sein (einige Datum im Jahr 2008), aber der Rest der Etiketten entlang der Achse als einige Datum im Jahr 1900 statt angezeigt.

Was ist der bevorzugte Weg, dies zu tun?

War es hilfreich?

Lösung

Für Daten in Microsoft Chart Controls Sie müssen explizit die Mindestdaten angeben, mit zu beginnen. Ansonsten dauert es 29. Dezember 1899 als Ursprung. Sie können Minimal- und max Daten auf Diagramm wie

gesetzt
chart.ChartAreas[0].AxisY.Minimum = (new DateTime(2010, 5, 1)).ToOADate();
chart.ChartAreas[0].AxisY.Maximum = (new DateTime(2011, 4, 1)).ToOADate();

Die Post Erstellen eines Gantt-Diagramm mit den MS Chart Controls hat einige wertvolle Informationen über Microsoft Chart Controls.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top