Δημιουργία γραφήματος ραντάρ σε διαφάνειες Java

Εισαγωγή στη δημιουργία γραφήματος ραντάρ σε διαφάνειες Java

Σε αυτό το σεμινάριο, θα σας καθοδηγήσουμε στη διαδικασία δημιουργίας ενός γραφήματος ραντάρ χρησιμοποιώντας το Aspose.Slides for Java API. Τα γραφήματα ραντάρ είναι χρήσιμα για την οπτικοποίηση δεδομένων σε κυκλικό μοτίβο, καθιστώντας ευκολότερη τη σύγκριση πολλαπλών σειρών δεδομένων. Θα παρέχουμε οδηγίες βήμα προς βήμα μαζί με τον πηγαίο κώδικα Java.

Προαπαιτούμενα

Πριν ξεκινήσουμε, βεβαιωθείτε ότι έχετε ενσωματωμένη τη βιβλιοθήκη Aspose.Slides for Java στο έργο σας. Μπορείτε να κατεβάσετε τη βιβλιοθήκη απόεδώ.

Βήμα 1: Ρύθμιση της παρουσίασης

Ας ξεκινήσουμε ρυθμίζοντας μια νέα παρουσίαση PowerPoint και προσθέτοντας μια διαφάνεια σε αυτήν.

String outPath = "Your Output Directory" + File.separator + "RadarChart_Out.pptx";
Presentation pres = new Presentation();

Βήμα 2: Προσθήκη γραφήματος ραντάρ

Στη συνέχεια, θα προσθέσουμε ένα γράφημα ραντάρ στη διαφάνεια. Θα καθορίσουμε τη θέση και τις διαστάσεις του γραφήματος.

ISlide sld = pres.getSlides().get_Item(0);
IChart ichart = sld.getShapes().addChart(ChartType.Radar, 0, 0, 400, 400);

Βήμα 3: Ρύθμιση δεδομένων γραφήματος

Τώρα θα ορίσουμε τα δεδομένα του γραφήματος. Αυτό περιλαμβάνει τη δημιουργία ενός βιβλίου εργασίας δεδομένων, την προσθήκη κατηγοριών και την προσθήκη σειρών.

int defaultWorksheetIndex = 0;
IChartDataWorkbook fact = ichart.getChartData().getChartDataWorkbook();

// Ορισμός τίτλου γραφήματος
ichart.getChartTitle().addTextFrameForOverriding("Radar Chart");

// Διαγραφή προεπιλεγμένων σειρών και κατηγοριών που δημιουργούνται
ichart.getChartData().getCategories().clear();
ichart.getChartData().getSeries().clear();

// Προσθήκη νέων κατηγοριών
ichart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 1, 0, "Category 1"));
ichart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 2, 0, "Category 3"));
ichart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 3, 0, "Category 5"));
ichart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 4, 0, "Category 7"));
ichart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 5, 0, "Category 9"));
ichart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 6, 0, "Category 11"));

// Προσθήκη νέας σειράς
ichart.getChartData().getSeries().add(fact.getCell(defaultWorksheetIndex, 0, 1, "Series 1"), ichart.getType());
ichart.getChartData().getSeries().add(fact.getCell(defaultWorksheetIndex, 0, 2, "Series 2"), ichart.getType());

Βήμα 4: Συμπλήρωση δεδομένων σειράς

Τώρα, θα συμπληρώσουμε τα δεδομένα σειράς για το διάγραμμα ραντάρ μας.

// Συμπλήρωση δεδομένων σειράς για τη Σειρά 1
IChartSeries series = ichart.getChartData().getSeries().get_Item(0);
series.getDataPoints().addDataPointForRadarSeries(fact.getCell(defaultWorksheetIndex, 1, 1, 2.7));
series.getDataPoints().addDataPointForRadarSeries(fact.getCell(defaultWorksheetIndex, 2, 1, 2.4));
series.getDataPoints().addDataPointForRadarSeries(fact.getCell(defaultWorksheetIndex, 3, 1, 1.5));
series.getDataPoints().addDataPointForRadarSeries(fact.getCell(defaultWorksheetIndex, 4, 1, 3.5));
series.getDataPoints().addDataPointForRadarSeries(fact.getCell(defaultWorksheetIndex, 5, 1, 5));
series.getDataPoints().addDataPointForRadarSeries(fact.getCell(defaultWorksheetIndex, 6, 1, 3.5));

// Σετ χρώμα σειράς
series.getFormat().getLine().getFillFormat().setFillType(FillType.Solid);
series.getFormat().getLine().getFillFormat().getSolidFillColor().setColor(Color.RED);

// Συμπλήρωση δεδομένων σειράς για τη Σειρά 2
series = ichart.getChartData().getSeries().get_Item(1);
series.getDataPoints().addDataPointForRadarSeries(fact.getCell(defaultWorksheetIndex, 1, 2, 2.5));
series.getDataPoints().addDataPointForRadarSeries(fact.getCell(defaultWorksheetIndex, 2, 2, 2.4));
series.getDataPoints().addDataPointForRadarSeries(fact.getCell(defaultWorksheetIndex, 3, 2, 1.6));
series.getDataPoints().addDataPointForRadarSeries(fact.getCell(defaultWorksheetIndex, 4, 2, 3.5));
series.getDataPoints().addDataPointForRadarSeries(fact.getCell(defaultWorksheetIndex, 5, 2, 4));
series.getDataPoints().addDataPointForRadarSeries(fact.getCell(defaultWorksheetIndex, 6, 2, 3.6));

// Σετ χρώμα σειράς
series.getFormat().getLine().getFillFormat().setFillType(FillType.Solid);
series.getFormat().getLine().getFillFormat().getSolidFillColor().setColor(Color.ORANGE);

Βήμα 5: Προσαρμογή Άξονα και Θρύλους

Ας προσαρμόσουμε τον άξονα και τους θρύλους για τον χάρτη ραντάρ μας.

// Ρύθμιση θέσης υπομνήματος
ichart.getLegend().setPosition(LegendPositionType.Bottom);

// Ρύθμιση ιδιοτήτων κειμένου άξονα κατηγορίας
IChartPortionFormat txtCat = ichart.getAxes().getHorizontalAxis().getTextFormat().getPortionFormat();
txtCat.setFontBold(NullableBool.True);
txtCat.setFontHeight(10);
txtCat.getFillFormat().setFillType(FillType.Solid);
txtCat.getFillFormat().getSolidFillColor().setColor(new Color(PresetColor.DimGray));
txtCat.setLatinFont(new FontData("Calibri"));

// Ρύθμιση ιδιοτήτων κειμένου Legends
IChartPortionFormat txtleg = ichart.getLegend().getTextFormat().getPortionFormat();
txtleg.setFontBold(NullableBool.True);
txtleg.setFontHeight(10);
txtleg.getFillFormat().setFillType(FillType.Solid);
txtleg.getFillFormat().getSolidFillColor().setColor(new Color(PresetColor.DimGray));
txtleg.setLatinFont(new FontData("Calibri"));

// Ρύθμιση ιδιοτήτων κειμένου άξονα τιμής
IChartPortionFormat txtVal = ichart.getAxes().getVerticalAxis().getTextFormat().getPortionFormat();
txtVal.setFontBold(NullableBool.True);
txtVal.setFontHeight(10);
txtVal.getFillFormat().setFillType(FillType.Solid);
txtVal.getFillFormat().getSolidFillColor().setColor(new Color(PresetColor.DimGray));
txtVal.setLatinFont(new FontData("Calibri"));

// Ορισμός μορφής αριθμού άξονα τιμής
ichart.getAxes().getVerticalAxis().setNumberFormatLinkedToSource(false);
ichart.getAxes().getVerticalAxis().setNumberFormat("\"$\"#,##0.00");

// Ρύθμιση τιμής κύριας μονάδας γραφήματος
ichart.getAxes().getVerticalAxis().setAutomaticMajorUnit(false);
ichart.getAxes().getVerticalAxis().setMajorUnit(1.25f);

Βήμα 6: Αποθήκευση της παρουσίασης

Τέλος, αποθηκεύστε την παρουσίαση που δημιουργήθηκε με το γράφημα ραντάρ

.

pres.save(outPath, SaveFormat.Pptx);

Αυτό είναι! Δημιουργήσατε με επιτυχία ένα γράφημα ραντάρ σε μια παρουσίαση PowerPoint χρησιμοποιώντας το Aspose.Slides για Java. Τώρα μπορείτε να προσαρμόσετε περαιτέρω αυτό το παράδειγμα για να ταιριάζει στις συγκεκριμένες ανάγκες σας.

Ολοκληρωμένος πηγαίος κώδικας για δημιουργία γραφήματος ραντάρ σε διαφάνειες Java

String outPath = "Your Output Directory" + File.separator + "RadarChart_Out.pptx";
Presentation pres = new Presentation();
try
{
	// Πρόσβαση στην πρώτη διαφάνεια
	ISlide sld = pres.getSlides().get_Item(0);
	// Προσθήκη γραφήματος ραντάρ
	IChart ichart = sld.getShapes().addChart(ChartType.Radar, 0, 0, 400, 400);
	// Ρύθμιση του ευρετηρίου του φύλλου δεδομένων γραφήματος
	int defaultWorksheetIndex = 0;
	// Λήψη του φύλλου εργασίας δεδομένων γραφήματος
	IChartDataWorkbook fact = ichart.getChartData().getChartDataWorkbook();
	// Ορισμός τίτλου γραφήματος
	ichart.getChartTitle().addTextFrameForOverriding("Radar Chart");
	// Διαγραφή προεπιλεγμένων σειρών και κατηγοριών που δημιουργούνται
	ichart.getChartData().getCategories().clear();
	ichart.getChartData().getSeries().clear();
	// Προσθήκη νέων κατηγοριών
	ichart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 1, 0, "Caetegoty 1"));
	ichart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 2, 0, "Caetegoty 3"));
	ichart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 3, 0, "Caetegoty 5"));
	ichart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 4, 0, "Caetegoty 7"));
	ichart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 5, 0, "Caetegoty 9"));
	ichart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 6, 0, "Caetegoty 11"));
	// Προσθήκη νέας σειράς
	ichart.getChartData().getSeries().add(fact.getCell(defaultWorksheetIndex, 0, 1, "Series 1"), ichart.getType());
	ichart.getChartData().getSeries().add(fact.getCell(defaultWorksheetIndex, 0, 2, "Series 2"), ichart.getType());
	// Τώρα συμπληρώνονται δεδομένα σειράς
	IChartSeries series = ichart.getChartData().getSeries().get_Item(0);
	series.getDataPoints().addDataPointForRadarSeries(fact.getCell(defaultWorksheetIndex, 1, 1, 2.7));
	series.getDataPoints().addDataPointForRadarSeries(fact.getCell(defaultWorksheetIndex, 2, 1, 2.4));
	series.getDataPoints().addDataPointForRadarSeries(fact.getCell(defaultWorksheetIndex, 3, 1, 1.5));
	series.getDataPoints().addDataPointForRadarSeries(fact.getCell(defaultWorksheetIndex, 4, 1, 3.5));
	series.getDataPoints().addDataPointForRadarSeries(fact.getCell(defaultWorksheetIndex, 5, 1, 5));
	series.getDataPoints().addDataPointForRadarSeries(fact.getCell(defaultWorksheetIndex, 6, 1, 3.5));
	// Σετ χρώμα σειράς
	series.getFormat().getLine().getFillFormat().setFillType(FillType.Solid);
	series.getFormat().getLine().getFillFormat().getSolidFillColor().setColor(Color.RED);
	//Τώρα συμπληρώνεται μια άλλη σειρά δεδομένων
	series = ichart.getChartData().getSeries().get_Item(1);
	series.getDataPoints().addDataPointForRadarSeries(fact.getCell(defaultWorksheetIndex, 1, 2, 2.5));
	series.getDataPoints().addDataPointForRadarSeries(fact.getCell(defaultWorksheetIndex, 2, 2, 2.4));
	series.getDataPoints().addDataPointForRadarSeries(fact.getCell(defaultWorksheetIndex, 3, 2, 1.6));
	series.getDataPoints().addDataPointForRadarSeries(fact.getCell(defaultWorksheetIndex, 4, 2, 3.5));
	series.getDataPoints().addDataPointForRadarSeries(fact.getCell(defaultWorksheetIndex, 5, 2, 4));
	series.getDataPoints().addDataPointForRadarSeries(fact.getCell(defaultWorksheetIndex, 6, 2, 3.6));
	// Σετ χρώμα σειράς
	series.getFormat().getLine().getFillFormat().setFillType(FillType.Solid);
	series.getFormat().getLine().getFillFormat().getSolidFillColor().setColor(Color.ORANGE);
	// Ρύθμιση θέσης υπομνήματος
	ichart.getLegend().setPosition(LegendPositionType.Bottom);
	// Ρύθμιση ιδιοτήτων κειμένου άξονα κατηγορίας
	IChartPortionFormat txtCat = ichart.getAxes().getHorizontalAxis().getTextFormat().getPortionFormat();
	txtCat.setFontBold(NullableBool.True);
	txtCat.setFontHeight(10);
	txtCat.getFillFormat().setFillType(FillType.Solid);
	txtCat.getFillFormat().getSolidFillColor().setColor(new Color(PresetColor.DimGray));
	txtCat.setLatinFont(new FontData("Calibri"));
	// Ρύθμιση ιδιοτήτων κειμένου Legends
	IChartPortionFormat txtleg = ichart.getLegend().getTextFormat().getPortionFormat();
	txtleg.setFontBold(NullableBool.True);
	txtleg.setFontHeight(10);
	txtleg.getFillFormat().setFillType(FillType.Solid);
	txtleg.getFillFormat().getSolidFillColor().setColor(new Color(PresetColor.DimGray));
	txtCat.setLatinFont(new FontData("Calibri"));
	// Ρύθμιση ιδιοτήτων κειμένου άξονα τιμής
	IChartPortionFormat txtVal = ichart.getAxes().getVerticalAxis().getTextFormat().getPortionFormat();
	txtVal.setFontBold(NullableBool.True);
	txtVal.setFontHeight(10);
	txtVal.getFillFormat().setFillType(FillType.Solid);
	txtVal.getFillFormat().getSolidFillColor().setColor(new Color(PresetColor.DimGray));
	txtVal.setLatinFont(new FontData("Calibri"));
	// Ορισμός μορφής αριθμού άξονα τιμής
	ichart.getAxes().getVerticalAxis().setNumberFormatLinkedToSource(false);
	ichart.getAxes().getVerticalAxis().setNumberFormat("\"$\"#,##0.00");
	// Ρύθμιση τιμής κύριας μονάδας γραφήματος
	ichart.getAxes().getVerticalAxis().setAutomaticMajorUnit(false);
	ichart.getAxes().getVerticalAxis().setMajorUnit(1.25f);
	// Αποθηκεύστε την παρουσίαση που δημιουργήθηκε
	pres.save(outPath, SaveFormat.Pptx);
}
finally
{
	if (pres != null) pres.dispose();
}

συμπέρασμα

Σε αυτό το σεμινάριο, μάθατε πώς να δημιουργείτε ένα γράφημα ραντάρ σε μια παρουσίαση του PowerPoint χρησιμοποιώντας το Aspose.Slides για Java. Μπορείτε να εφαρμόσετε αυτές τις έννοιες για να οπτικοποιήσετε και να παρουσιάσετε τα δεδομένα σας αποτελεσματικά στις εφαρμογές σας Java.

Συχνές ερωτήσεις

Πώς μπορώ να αλλάξω τον τίτλο του γραφήματος;

Για να αλλάξετε τον τίτλο του γραφήματος, τροποποιήστε την ακόλουθη γραμμή:

ichart.getChartTitle().addTextFrameForOverriding("Radar Chart");

Μπορώ να προσθέσω περισσότερες σειρές δεδομένων στο γράφημα ραντάρ;

Ναι, μπορείτε να προσθέσετε περισσότερες σειρές δεδομένων ακολουθώντας τα βήματα στο “Βήμα 3” και “Βήμα 4” για κάθε πρόσθετη σειρά που θέλετε να συμπεριλάβετε.

Πώς μπορώ να προσαρμόσω τα χρώματα του γραφήματος;

Μπορείτε να προσαρμόσετε τα χρώματα της σειράς τροποποιώντας τις γραμμές που ορίζουν τοSolidFillColor ιδιοκτησία για κάθε σειρά. Για παράδειγμα:

series.getFormat().getLine().getFillFormat().getSolidFillColor().setColor(Color.RED);

Πώς μπορώ να αλλάξω τις ετικέτες και τη μορφοποίηση των αξόνων;

Ανατρέξτε στο “Βήμα 5” για να προσαρμόσετε τις ετικέτες και τη μορφοποίηση των αξόνων, συμπεριλαμβανομένου του μεγέθους και του χρώματος της γραμματοσειράς.

Πώς μπορώ να αποθηκεύσω το γράφημα σε διαφορετική μορφή αρχείου;

Μπορείτε να αλλάξετε τη μορφή εξόδου τροποποιώντας την επέκταση αρχείου στοoutPath μεταβλητή και χρησιμοποιώντας την κατάλληληSaveFormat . Για παράδειγμα, για αποθήκευση ως PDF, χρησιμοποιήστεSaveFormat.Pdf.