Hallo Leute,
irgendwie kriege ich es nicht hin. In einem Chart werden auf der Y-Achse Zahlenwerte angezeigt, auf der X-Achse der Zeitraum, für die Anzeige der Zahlenwerte in Kalenderwochen. Das klappt soweit so gut. Hier ein Bild dazu (Bild hochladen scheint nicht zu funktionieren).
spearhead-home.com/Downloads/20220509_XAchseKWs.jpg
Im Bild ist zu sehen, dass vom Anfang bis zur aktuellen Woche (Bild von letzter Woche) nicht alle Labels angezeigt werden, danach für jede Woche. Warum das so ist??? Ich weiß es nicht. Ich würde gern die Labels durch CustomLabels selbst setzen, kriege aber nur die Intervalschritte auf der X-Achse angezeigt und nicht die Labels. Was mache ich falsch?
Hier Quellcode dazu:
CodeTags korrigiert ~VaporiZed
irgendwie kriege ich es nicht hin. In einem Chart werden auf der Y-Achse Zahlenwerte angezeigt, auf der X-Achse der Zeitraum, für die Anzeige der Zahlenwerte in Kalenderwochen. Das klappt soweit so gut. Hier ein Bild dazu (Bild hochladen scheint nicht zu funktionieren).
spearhead-home.com/Downloads/20220509_XAchseKWs.jpg
Im Bild ist zu sehen, dass vom Anfang bis zur aktuellen Woche (Bild von letzter Woche) nicht alle Labels angezeigt werden, danach für jede Woche. Warum das so ist??? Ich weiß es nicht. Ich würde gern die Labels durch CustomLabels selbst setzen, kriege aber nur die Intervalschritte auf der X-Achse angezeigt und nicht die Labels. Was mache ich falsch?
Hier Quellcode dazu:
VB.NET-Quellcode
- dim ints as integer = CInt(DateDiff(DateInterval.WeekOfYear, von_X, bis_X, FirstDayOfWeek.Monday, FirstWeekOfYear.FirstFullWeek))
- Dim xdate(ints) As Date 'wird in einer Schleife durchlaufen und das Datum der jeweiligen Woche hinzugefügt.
- newchart(chart1)'falls vorhanden, wird hier alles gecleared
- Dim chartArea1 As New ChartArea("Default")
- chart1.ChartAreas.Add(chartArea1)
- chart1.ChartAreas("Default").CursorX.IsUserEnabled = False
- chart1.ChartAreas("Default").CursorX.IsUserSelectionEnabled = False
- chart1.ChartAreas("Default").BackGradientStyle = GradientStyle.None
- chart1.ChartAreas("Default").Position.Auto = False
- chart1.ChartAreas("Default").Position.X = 0
- chart1.ChartAreas("Default").Position.Y = 10
- chart1.ChartAreas("Default").Position.Width = ChartAreasWidth
- chart1.ChartAreas("Default").Position.Height = ChartAreasHeight - 4
- chart1.ChartAreas("Default").AxisX.ScaleView.Zoomable = True
- chart1.ChartAreas("Default").AxisX.ScrollBar.IsPositionedInside = True
- chart1.ChartAreas("Default").AxisX.MajorGrid.Enabled = False
- chart1.ChartAreas("Default").AxisX.MajorGrid.LineWidth = 1
- chart1.ChartAreas("Default").AxisX.IntervalType = DateTimeIntervalType.Weeks
- chart1.ChartAreas("Default").AxisX.Interval = 1
- chart1.ChartAreas("Default").AxisX.LabelAutoFitStyle = LabelAutoFitStyles.DecreaseFont
- chart1.ChartAreas("Default").AxisX.LabelAutoFitMinFontSize = 7
- chart1.ChartAreas("Default").AxisX.LabelStyle.Font = My.Settings.fontbold8
- chart1.ChartAreas("Default").AxisX.LabelStyle.Angle = 90
- chart1.ChartAreas("Default").AxisX.MajorTickMark.Enabled = True
- chart1.ChartAreas("Default").AxisX.MinorTickMark.Enabled = False
- chart1.ChartAreas("Default").AxisX.Minimum = von_X.ToOADate()
- chart1.ChartAreas("Default").AxisX.Maximum = bis_X.ToOADate()
- chart1.ChartAreas("Default").AxisX.IsMarginVisible = False
- Dim wertFormat As String = "###,##0 €"
- Dim culture As New System.Globalization.CultureInfo("de-DE")
- chart1.Series.Add("K").Color = ColorTranslator.FromHtml("#297AB7") 'MattBlau colorx(0)
- chart1.Series("K").Points.DataBindXY(xdate, yValues)
- chart1.Series("K").ChartType = SeriesChartType.StackedColumn
- chart1.Series("K")("DrawingStyle") = "cylinder"
- chart1.Series("K").BorderDashStyle = ChartDashStyle.Solid
- chart1.Series("K").BorderWidth = 2
- chart1.Series("K").IsVisibleInLegend = False
- chart1.Series("K").IsValueShownAsLabel = False
- chart1.Series("K").Points(lastIndex - 1).LabelBackColor = Color.White
- chart1.Series("K").Points(lastIndex - 1).LabelFormat = "C0"
- chart1.Series("K").Points(lastIndex - 1).Label = lastSelectedCosts.ToString(wertFormat, culture) ' & " €"
- chart1.Series("K")("PointWidth") = "0.50"
- chart1.Series("K")("StackedGroupName") = "Group100"
- 'how to override this with customlabels on axis.x???
- 'wird nicht angezeigt
- chart1.ChartAreas("Default").AxisX.CustomLabels.Add(New CustomLabel(von_X.ToOADate(), bis_X.ToOADate(), "", 1, LabelMarkStyle.None))
- 'or
- 'wird nicht angezeigt
- For intVal As Integer = 0 To ints - 1
- chart1.ChartAreas("Default").AxisX.CustomLabels.Add(CDbl(intVal) - 1, CDbl(intVal) + 1, CStr("Weeks") & intVal)
- Next
CodeTags korrigiert ~VaporiZed
Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „JTrum“ ()