Diagrammachse
Ermitteln der Maximalwerte auf der vertikalen Achse in Diagrammen
Aspose.Slides für .NET ermöglicht das Abrufen der Minimal‑ und Maximalwerte einer vertikalen Achse. Folgen Sie diesen Schritten:
- Erstellen Sie eine Instanz der Presentation‑Klasse.
- Greifen Sie auf die erste Folie zu.
- Fügen Sie ein Diagramm mit Standarddaten hinzu.
- Ermitteln Sie den tatsächlichen Maximalwert der Achse.
- Ermitteln Sie den tatsächlichen Minimalwert der Achse.
- Ermitteln Sie die tatsächliche Hauptintervallgröße der Achse.
- Ermitteln Sie die tatsächliche Nebenintervallgröße der Achse.
- Ermitteln Sie die tatsächliche Skala des Hauptintervalls der Achse.
- Ermitteln Sie die tatsächliche Skala des Nebenintervalls der Achse.
Dieser Beispielcode – eine Umsetzung der oben genannten Schritte – zeigt, wie Sie die erforderlichen Werte in C# erhalten:
using (Presentation pres = new Presentation())
{
Chart chart = (Chart)pres.Slides[0].Shapes.AddChart(ChartType.Area, 100, 100, 500, 350);
chart.ValidateChartLayout();
double maxValue = chart.Axes.VerticalAxis.ActualMaxValue;
double minValue = chart.Axes.VerticalAxis.ActualMinValue;
double majorUnit = chart.Axes.HorizontalAxis.ActualMajorUnit;
double minorUnit = chart.Axes.HorizontalAxis.ActualMinorUnit;
// Speichert die Präsentation
presentation.Save("ErrorBars_out.pptx", SaveFormat.Pptx);
}
Austauschen der Daten zwischen Achsen
Aspose.Slides ermöglicht das schnelle Vertauschen von Daten zwischen Achsen – die auf der vertikalen Achse (y‑Achse) dargestellten Daten werden zur horizontalen Achse (x‑Achse) verschoben und umgekehrt.
Dieser C#‑Code zeigt, wie Sie den Datentausch zwischen Achsen in einem Diagramm durchführen:
// Erstellt leere Präsentation
using (Presentation pres = new Presentation())
{
IChart chart = pres.Slides[0].Shapes.AddChart(ChartType.ClusteredColumn, 100, 100, 400, 300);
// Vertauscht Zeilen und Spalten
chart.ChartData.SwitchRowColumn();
// Speichert die Präsentation
pres.Save("SwitchChartRowColumns_out.pptx", SaveFormat.Pptx);
}
Deaktivieren der vertikalen Achse für Liniendiagramme
Dieser C#‑Code zeigt, wie Sie die vertikale Achse eines Liniendiagramms ausblenden:
using (Presentation pres = new Presentation())
{
IChart chart = pres.Slides[0].Shapes.AddChart(ChartType.Line, 100, 100, 400, 300);
chart.Axes.VerticalAxis.IsVisible = false;
pres.Save("chart.pptx", SaveFormat.Pptx);
}
Deaktivieren der horizontalen Achse für Liniendiagramme
Dieser Code zeigt, wie Sie die horizontale Achse eines Liniendiagramms ausblenden:
using (Presentation pres = new Presentation())
{
IChart chart = pres.Slides[0].Shapes.AddChart(ChartType.Line, 100, 100, 400, 300);
chart.Axes.HorizontalAxis.IsVisible = false;
pres.Save("chart.pptx", SaveFormat.Pptx);
}
Ändern der Kategorienachse
Mit der Eigenschaft CategoryAxisType können Sie den bevorzugten Typ der Kategorienachse festlegen (date oder text). Dieser C#‑Code demonstriert die Vorgehensweise:
using (Presentation presentation = new Presentation("ExistingChart.pptx"))
{
IChart chart = presentation.Slides[0].Shapes[0] as IChart;
chart.Axes.HorizontalAxis.CategoryAxisType = CategoryAxisType.Date;
chart.Axes.HorizontalAxis.IsAutomaticMajorUnit = false;
chart.Axes.HorizontalAxis.MajorUnit = 1;
chart.Axes.HorizontalAxis.MajorUnitScale = TimeUnitType.Months;
presentation.Save("ChangeChartCategoryAxis_out.pptx", SaveFormat.Pptx);
}
Festlegen des Datumsformats für den Wert einer Kategorienachse
Aspose.Slides für .NET ermöglicht das Festlegen des Datumsformats für einen Kategorienachsenwert. Der Vorgang wird in diesem C#‑Code demonstriert:
using (Presentation pres = new Presentation())
{
IChart chart = pres.Slides[0].Shapes.AddChart(ChartType.Area, 50, 50, 450, 300);
IChartDataWorkbook wb = chart.ChartData.ChartDataWorkbook;
wb.Clear(0);
chart.ChartData.Categories.Clear();
chart.ChartData.Series.Clear();
chart.ChartData.Categories.Add(wb.GetCell(0, "A2", new DateTime(2015, 1, 1).ToOADate()));
chart.ChartData.Categories.Add(wb.GetCell(0, "A3", new DateTime(2016, 1, 1).ToOADate()));
chart.ChartData.Categories.Add(wb.GetCell(0, "A4", new DateTime(2017, 1, 1).ToOADate()));
chart.ChartData.Categories.Add(wb.GetCell(0, "A5", new DateTime(2018, 1, 1).ToOADate()));
IChartSeries series = chart.ChartData.Series.Add(ChartType.Line);
series.DataPoints.AddDataPointForLineSeries(wb.GetCell(0, "B2", 1));
series.DataPoints.AddDataPointForLineSeries(wb.GetCell(0, "B3", 2));
series.DataPoints.AddDataPointForLineSeries(wb.GetCell(0, "B4", 3));
series.DataPoints.AddDataPointForLineSeries(wb.GetCell(0, "B5", 4));
chart.Axes.HorizontalAxis.CategoryAxisType = CategoryAxisType.Date;
chart.Axes.HorizontalAxis.IsNumberFormatLinkedToSource = false;
chart.Axes.HorizontalAxis.NumberFormat = "yyyy";
pres.Save("test.pptx", SaveFormat.Pptx);
}
Festlegen des Rotationswinkels für den Diagrammachsentitel
Aspose.Slides für .NET ermöglicht das Festlegen des Rotationswinkels für einen Diagrammachsentitel. Dieser C#‑Code demonstriert den Vorgang:
using (Presentation pres = new Presentation())
{
IChart chart = pres.Slides[0].Shapes.AddChart(ChartType.ClusteredColumn, 50, 50, 450, 300);
chart.Axes.VerticalAxis.HasTitle = true;
chart.Axes.VerticalAxis.Title.TextFormat.TextBlockFormat.RotationAngle = 90;
pres.Save("test.pptx", SaveFormat.Pptx);
}
Festlegen der Position der Achse in einer Kategorien- oder Wertachse
Aspose.Slides für .NET ermöglicht das Festlegen der Position der Achse in einer Kategorien‑ oder Wertachse. Dieser C#‑Code zeigt, wie die Aufgabe ausgeführt wird:
using (Presentation pres = new Presentation())
{
IChart chart = pres.Slides[0].Shapes.AddChart(ChartType.ClusteredColumn, 50, 50, 450, 300);
chart.Axes.HorizontalAxis.AxisBetweenCategories = true;
pres.Save("AsposeScatterChart.pptx", SaveFormat.Pptx);
}
Aktivieren der Anzeige der Einheit in der Diagrammwertachse
Aspose.Slides für .NET ermöglicht das Konfigurieren eines Diagramms, um ein Einheitsetikett in seiner Diagrammwertachse anzuzeigen. Dieser C#‑Code demonstriert den Vorgang:
using (Presentation pres = new Presentation(dataDir+"Test.pptx"))
{
IChart chart = pres.Slides[0].Shapes.AddChart(ChartType.ClusteredColumn, 50, 50, 450, 300);
chart.Axes.VerticalAxis.DisplayUnit = DisplayUnitType.Millions;
pres.Save("Result.pptx", SaveFormat.Pptx);
}
FAQ
Wie lege ich den Wert fest, an dem eine Achse die andere schneidet (Achsenkreuzung)?
Achsen bieten eine crossing setting: Sie können wählen, ob die Achse bei Null, beim maximalen Kategorie‑/Wertbereich oder bei einem bestimmten numerischen Wert kreuzt. Das ist nützlich, um die X‑Achse nach oben oder unten zu verschieben oder eine Basislinie zu betonen.
Wie positioniere ich die Tick‑Beschriftungen relativ zur Achse (nebeneinander, außen, innen)?
Stellen Sie die label position auf „cross“, „outside“ oder „inside“. Das beeinflusst die Lesbarkeit und hilft, Platz zu sparen, insbesondere bei kleinen Diagrammen.