2017-04-27 2 views
1

Eigentlich ist mein Diagramm wie das suchen:Position ändern der y-Achse Etikett nach unten von Fenstern bildet Diagramm

enter image description here

Wie Sie die Etiketten mit der anderen Reihe überlappt sehen können. Wie kann ich das Label für series2 (= Spalten) nach unten über der x-Achse setzen? Es scheint, dass es keine Eigenschaft dafür gibt? Dank

+0

im nicht wirklich sicher, was Sie tun möchten - vielleicht hilft dies https://stackoverflow.com/questions/1351054/winform-ui-components-layer-order – WhileTrueSleep

+0

Nein, Sie können nicht frei pla ce die Datenpunktbeschriftungen noch an der Spitze des Diagramms ausrichten. Sie könnten versuchen, die Xaxis2 hinzuzufügen und versuchen, die Werte einer Serie dort zu zeigen. – TaW

+0

@while: Er spricht über die Etiketten in einem MsChart, nicht Label-Steuerelemente! – TaW

Antwort

1

Sie können die y-Werte einer Serie auf einer Achse anzeigen. Dies kann die primäre Achse sein (ganz unten), aber dann werden die x-Werte nicht angezeigt. Oder es kann die sekundäre Achse sein; für das hier ist das, was Sie tun können:

zuerst die zweite x-Achse aktivieren:

chart.ChartAreas[0].AxisX2.Enabled = AxisEnabled.True; 

dann die Serie verbinden Sie diese Nebenachse wollen:

yourSeries.XAxisType = AxisType.Secondary; 

schließlich die Serie erzählen um seine y-Werte auf seinen Achsenschildern anzuzeigen:

yourSeries.AxisLabel = "#VAL"; 

Wenn Ihre andere Serie ihre Werte zeigt nahe an den Punkten:

yourOtherSeries.IsValueShownAsLabel = true; 

.this das Ergebnis sein könnte:

enter image description here

Hier habe ich die Achsenbeschriftungen gefärbt mit ihrer Serie zu gehen:

chart.ChartAreas[0].AxisX2.LabelStyle.ForeColor = yourSeries.Color; 
+1

Danke, funktioniert perfekt! Kleiner Fehler: 'chart.ChartAreas [0] .AxisX2 = AxisEnabled.True;' is '.Enabled fehlt ->' chart.ChartAreas [0] .AxisX2.Enabled = AxisEnabled.True; '. –

Verwandte Themen