Personalizza i grafici 3D nelle presentazioni usando JavaScript

Panoramica

Questo articolo spiega come personalizzare un grafico 3D in Aspose.Slides configurando le impostazioni Rotation3D come RotationX, RotationY, DepthPercents e RightAngleAxes. Descrive passo passo la creazione di una presentazione, l’aggiunta di un grafico 3D con dati predefiniti, l’applicazione delle impostazioni di visualizzazione 3D richieste e il salvataggio della presentazione modificata in un file PPTX.

Impostare le proprietà RotationX, RotationY e DepthPercents del grafico 3D

Aspose.Slides per Node.js via Java fornisce un’API semplice per impostare queste proprietà. L’articolo seguente ti aiuterà a impostare diverse proprietà come Rotazione X, Rotazione Y, DepthPercents ecc. Il codice di esempio applica l’impostazione delle proprietà sopra citate.

  1. Crea un’istanza della classe Presentation.
  2. Accedi alla prima diapositiva.
  3. Aggiungi un grafico con dati predefiniti.
  4. Imposta le proprietà Rotation3D.
  5. Scrivi la presentazione modificata in un file PPTX.
var pres = new aspose.slides.Presentation();
try {
    // Accedi alla prima diapositiva
    var slide = pres.getSlides().get_Item(0);
    // Aggiungi un grafico con dati predefiniti
    var chart = slide.getShapes().addChart(aspose.slides.ChartType.StackedColumn3D, 0, 0, 500, 500);
    // Impostazione dell'indice del foglio dati del grafico
    var defaultWorksheetIndex = 0;
    // Recupero del foglio di lavoro dei dati del grafico
    var fact = chart.getChartData().getChartDataWorkbook();
    // Aggiungi serie
    chart.getChartData().getSeries().add(fact.getCell(defaultWorksheetIndex, 0, 1, "Series 1"), chart.getType());
    chart.getChartData().getSeries().add(fact.getCell(defaultWorksheetIndex, 0, 2, "Series 2"), chart.getType());
    // Aggiungi categorie
    chart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 1, 0, "Caetegoty 1"));
    chart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 2, 0, "Caetegoty 2"));
    chart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 3, 0, "Caetegoty 3"));
    // Imposta le proprietà Rotation3D
    chart.getRotation3D().setRightAngleAxes(true);
    chart.getRotation3D().setRotationX(40);
    chart.getRotation3D().setRotationY(270);
    chart.getRotation3D().setDepthPercents(150);
    // Preleva la seconda serie del grafico
    var series = chart.getChartData().getSeries().get_Item(1);
    // Ora popolamento dei dati della serie
    series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 1, 1, 20));
    series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 2, 1, 50));
    series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 3, 1, 30));
    series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 1, 2, 30));
    series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 2, 2, 10));
    series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 3, 2, 60));
    // Imposta valore Overlap
    series.getParentSeriesGroup().setOverlap(100);
    // Scrivi la presentazione su disco
    pres.save("Rotation3D_out.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
    if (pres != null) {
        pres.dispose();
    }
}

FAQ

Quali tipi di grafico supportano la modalità 3D in Aspose.Slides?

Aspose.Slides supporta le varianti 3D dei grafici a colonne, inclusi Column 3D, Clustered Column 3D, Stacked Column 3D e 100% Stacked Column 3D, insieme ai relativi tipi 3D esposti tramite l’enumerazione ChartType. Per un elenco esatto e aggiornato, controlla i membri di ChartType nella documentazione API della versione installata.

Posso ottenere un’immagine raster di un grafico 3D per un report o per il web?

Sì. Puoi esportare un grafico in immagine tramite l'chart API o render the entire slide in formati come PNG o JPEG. Questo è utile quando hai bisogno di un’anteprima pixel‑perfect o vuoi incorporare il grafico in documenti, dashboard o pagine web senza richiedere PowerPoint.

Quanto è efficiente la creazione e il rendering di grandi grafici 3D?

Le prestazioni dipendono dal volume dei dati e dalla complessità visiva. Per i migliori risultati, mantieni gli effetti 3D minimi, evita texture pesanti su pareti e aree del grafico, limita il numero di punti dati per serie quando possibile e rendi l’output a una dimensione adeguata (risoluzione e dimensioni) per corrispondere al display o alla stampa target.