Diagram számítások optimalizálása prezentációkhoz .NET-ben
Áttekintés
Az Aspose.Slides API-kat biztosít a diagramok számításaihoz és az elrendezési adatokhoz a prezentációkban. Ez a cikk bemutatja, hogyan lehet lekérni a diagram elemeinek tényleges értékeit, beleértve a IActualLayout interfészt megvalósító elemek valós pozícióját és méretét, valamint a diagram tengelyek tényleges értékeit. Az is kiderül, hogy ezek az értékek a diagram elrendezésének ellenőrzése után kerülnek kitöltésre.
Ezen felül a cikk bemutatja, hogyan lehet lekérni a szülő diagram elemek tényleges pozícióját, valamint hogyan lehet elrejteni a diagram komponenseket, mint a cím, a tengelyek, a jelmagyarázat és a rácsvonalak. Ezek a példák együtt segítenek a diagram elrendezési információk vizsgálatában és a diagram elemek láthatóságának programozott szabályozásában a PowerPoint‑prezentációkban.
A diagram elemek tényleges értékeinek kiszámítása
Az Aspose.Slides for .NET egyszerű API-t biztosít ezen tulajdonságok lekéréséhez. Ez segít a diagram elemek tényleges értékeinek kiszámításában. A tényleges értékek tartalmazzák az IActualLayout interfészt megvalósító elemek pozícióját (IActualLayout.ActualX, IActualLayout.ActualY, IActualLayout.ActualWidth, IActualLayout.ActualHeight), valamint a tengelyek tényleges értékeit (IAxis.ActualMaxValue, IAxis.ActualMinValue, IAxis.ActualMajorUnit, IAxis.ActualMinorUnit, IAxis.ActualMajorUnitScale, IAxis.ActualMinorUnitScale).
using (Presentation pres = new Presentation("test.pptx"))
{
Chart chart = (Chart)pres.Slides[0].Shapes.AddChart(ChartType.ClusteredColumn, 100, 100, 500, 350);
chart.ValidateChartLayout();
double x = chart.PlotArea.ActualX;
double y = chart.PlotArea.ActualY;
double w = chart.PlotArea.ActualWidth;
double h = chart.PlotArea.ActualHeight;
// Prezentáció mentése
pres.Save("Result.pptx", SaveFormat.Pptx);
}
A szülő diagram elemek tényleges pozíciójának kiszámítása
Az Aspose.Slides for .NET egyszerű API-t biztosít ezen tulajdonságok lekéréséhez. Az IActualLayout tulajdonságai információt adnak a szülő diagram elem tényleges pozíciójáról. A tulajdonságok tényleges értékekkel való feltöltéséhez előzetesen meg kell hívni az IChart.ValidateChartLayout() metódust.
// Üres prezentáció létrehozása
using (Presentation pres = new Presentation())
{
Chart chart = (Chart)pres.Slides[0].Shapes.AddChart(ChartType.ClusteredColumn, 100, 100, 500, 350);
chart.ValidateChartLayout();
double x = chart.PlotArea.ActualX;
double y = chart.PlotArea.ActualY;
double w = chart.PlotArea.ActualWidth;
double h = chart.PlotArea.ActualHeight;
}
Diagram elemek elrejtése
Ez a téma segít megérteni, hogyan lehet információkat elrejteni a diagramról. Az Aspose.Slides for .NET használatával elrejtheti a címet, a függőleges tengelyt, a vízszintes tengelyt és a rácsvonalakat a diagramról. Az alábbi kódrészlet bemutatja, hogyan használhatók ezek a tulajdonságok.
using (Presentation pres = new Presentation())
{
ISlide slide = pres.Slides[0];
IChart chart = slide.Shapes.AddChart(ChartType.LineWithMarkers, 140, 118, 320, 370);
// Diagram cím elrejtése
chart.HasTitle = false;
/// Értéktengely elrejtése
chart.Axes.VerticalAxis.IsVisible = false;
// Kategória tengely láthatósága
chart.Axes.HorizontalAxis.IsVisible = false;
// Jelmagyarázat elrejtése
chart.HasLegend = false;
// Fő rácsvonalak elrejtése
chart.Axes.HorizontalAxis.MajorGridLinesFormat.Line.FillFormat.FillType = FillType.NoFill;
for (int i = 0; i < chart.ChartData.Series.Count; i++)
{
chart.ChartData.Series.RemoveAt(i);
}
IChartSeries series = chart.ChartData.Series[0];
series.Marker.Symbol = MarkerStyleType.Circle;
series.Labels.DefaultDataLabelFormat.ShowValue = true;
series.Labels.DefaultDataLabelFormat.Position = LegendDataLabelPosition.Top;
series.Marker.Size = 15;
// Sorozat vonalszín beállítása
series.Format.Line.FillFormat.FillType = FillType.Solid;
series.Format.Line.FillFormat.SolidFillColor.Color = Color.Purple;
series.Format.Line.DashStyle = LineDashStyle.Solid;
pres.Save("HideInformationFromChart.pptx", SaveFormat.Pptx);
}
GYIK
Külső Excel munkafüzetek használhatók adatforrásként, és ez hogyan befolyásolja az újraszámítást?
Igen. Egy diagram hivatkozhat külső munkafüzetre: amikor csatlakozik vagy frissíti a külső forrást, a képletek és értékek a munkafüzettől származnak, és a diagram a nyitás/szerkesztés műveletei során tükrözi a frissítéseket. Az API lehetővé teszi, hogy megadja a külső munkafüzet útvonalát és kezelje a kapcsolt adatokat.
Kiszámíthatok és megjeleníthetek trendvonalakat anélkül, hogy saját regressziót implementálnék?
Igen. A trendvonalak (lineáris, exponenciális és egyebek) hozzáadódnak és frissülnek az Aspose.Slides által; paramétereiket a sorozat adataiból automatikusan újraszámítja a rendszer, így nem szükséges saját számításokat implementálni.
Ha egy prezentáció több diagrammal rendelkezik, amelyek külső hivatkozásokat tartalmaznak, szabályozhatom, hogy melyik munkafüzetet használja az egyes diagramok a számított értékekhez?
Igen. Minden diagram saját külső munkafüzettel hivatkozhat, vagy minden diagramhoz külön‑külön létrehozhat vagy cserélhet külső munkafüzetet a többitől függetlenül.