Εφαρμογή Τύπων Φύλλου Γραφήματος σε Παρουσιάσεις Χρησιμοποιώντας Java
Επισκόπηση
Ένα φύλλο γραφήματος είναι η πηγή δεδομένων πίσω από ένα γράφημα σε μια παρουσίαση. Αποθηκεύει τα ονόματα κατηγοριών και σειρών μαζί με τις αριθμητικές τιμές που εμφανίζει το γράφημα. Στο Aspose.Slides, αυτό το φύλλο είναι διαθέσιμο μέσω του βιβλίου εργασίας δεδομένων γραφήματος, το οποίο σας επιτρέπει να εργάζεστε με τα δεδομένα του γραφήματος προγραμματιστικά.
Αυτό το άρθρο εξηγεί πώς να χρησιμοποιείτε τύπους φύλλων εργασίας στα δεδομένα του γραφήματος ώστε οι τιμές των κελιών να υπολογίζονται και να ενημερώνονται αυτόματα αντί να εισάγονται χειροκίνητα. Δείχνει πώς να ορίζετε τύπους, να χρησιμοποιείτε αναφορές στυλ A1 και R1C1, να επαναϋπολογίζετε τύπους του βιβλίου εργασίας και να εργάζεστε με τις υποστηριζόμενες σταθερές, τελεστές, αναφορές κελιών και προεπιλεγμένες συναρτήσεις που διατίθενται για φύλλα γραφημάτων σε παρουσιάσεις.
Σχετικά με τους Τύπους Φύλλου Γραφήματος σε Παρουσιάσεις
Φύλλο γραφήματος (ή φύλλο εργασίας γραφήματος) σε παρουσίαση είναι η πηγή δεδομένων του γραφήματος. Το φύλλο γραφήματος περιέχει δεδομένα, τα οποία αντιπροσωπεύονται στο γράφημα με γραφικό τρόπο. Όταν δημιουργείτε ένα γράφημα στο PowerPoint, το φύλλο που σχετίζεται με αυτό το γράφημα δημιουργείται αυτόματα επίσης. Το φύλλο γραφήματος δημιουργείται για όλους τους τύπους γραφημάτων: γράφημα γραμμής, ράβδων, ηλιακού εκτυφώματος, πίτας κτλ. Για να δείτε το φύλλο γραφήματος στο PowerPoint, πρέπει να κάνετε διπλό κλικ στο γράφημα:

Το φύλλο γραφήματος περιέχει τα ονόματα των στοιχείων του γραφήματος (Όνομα Κατηγορίας: Category1, Όνομα Σειράς) και έναν πίνακα με αριθμητικά δεδομένα κατάλληλα για αυτές τις κατηγορίες και σειρές. Προεπιλογή, όταν δημιουργείτε ένα νέο γράφημα, τα δεδομένα του φύλλου γραφήματος ορίζονται με τα προεπιλεγμένα δεδομένα. Στη συνέχεια μπορείτε να αλλάξετε τα δεδομένα του φύλλου χειροκίνητα.
Συνήθως, το γράφημα αντιπροσωπεύει σύνθετα δεδομένα (π.χ. χρηματοοικονομικοί αναλυτές, επιστημονικοί αναλυτές), με κελιά που υπολογίζονται από τις τιμές σε άλλα κελιά ή από άλλα δυναμικά δεδομένα. Ο χειροκίνητος υπολογισμός της τιμής του κελιού και η σκληρή κωδικοποίησή του στο κελί, δυσχεραίνουν την μελλοντική αλλαγή. Αν αλλάξετε την τιμή ενός συγκεκριμένου κελιού, όλα τα κελιά που εξαρτώνται από αυτό θα πρέπει επίσης να ενημερωθούν. Επιπλέον, τα δεδομένα του πίνακα μπορεί να εξαρτώνται από δεδομένα άλλων πινάκων, δημιουργώντας ένα σύνθετο σχήμα δεδομένων παρουσίασης που χρειάζεται εύκολη και ευέλικτη ενημέρωση.
Τύπος φύλλου γραφήματος σε παρουσίαση είναι μια έκφραση για αυτόματο υπολογισμό και ενημέρωση των δεδομένων του φύλλου γραφήματος. Ο τύπος φύλλου καθορίζει τη λογική υπολογισμού δεδομένων για ένα συγκεκριμένο κελί ή ένα σύνολο κελιών. Ο τύπος φύλλου είναι μαθηματικός ή λογικός τύπος, ο οποίος χρησιμοποιεί: αναφορές κελιών, μαθηματικές συναρτήσεις, λογικούς τελεστές, αριθμητικούς τελεστές, συναρτήσεις μετατροπής, σταθερές συμβολοσειρών κτλ. Ο ορισμός του τύπου γράφεται σε ένα κελί, και αυτό το κελί δεν περιέχει απλή τιμή. Ο τύπος φύλλου υπολογίζει την τιμή και την επιστρέφει, η οποία στη συνέχεια ανατίθεται στο κελί. Οι τύποι φύλλου γραφήματος σε παρουσιάσεις είναι πρακτικά οι ίδιοι με τους τύπους του Excel, και υποστηρίζουν τις ίδιες προεπιλεγμένες συναρτήσεις, τελεστές και σταθερές για την υλοποίησή τους.
Στο Aspose.Slides το φύλλο γραφήματος αντιπροσωπεύεται με τη μέθοδο Chart.getChartData.getChartDataWorkbook του τύπου IChartDataWorkbook. Ο τύπος φύλλου μπορεί να τεθεί και να αλλάξει με τη IChartDataCell.setFormula μέθοδο. Η ακόλουθη λειτουργικότητα υποστηρίζεται για τύπους στο Aspose.Slides:
- Λογικές σταθερές
- Αριθμητικές σταθερές
- Σταθερές συμβολοσειράς
- Σταθερές σφαλμάτων
- Αριθμητικοί τελεστές
- Τελεστές σύγκρισης
- Αναφορές κελιών στυλ A1
- Αναφορές κελιών στυλ R1C1
- Προεπιλεγμένες συναρτήσεις
Κατά κανόνα, τα φύλλα εργασίας αποθηκεύουν τις τελευταίες υπολογισμένες τιμές τύπων. Εάν μετά τη φόρτωση της παρουσίασης, τα δεδομένα του γραφήματος δεν έχουν αλλάξει, η μέθοδος IChartDataCell.getValue επιστρέφει αυτές τις τιμές κατά την ανάγνωση. Ωστόσο, εάν τα δεδομένα του φύλλου έχουν αλλάξει, κατά την ανάγνωση της ιδιότητας ChartDataCell.Value προκαλείται η εξαίρεση CellUnsupportedDataException για τους μη υποστηριζόμενους τύπους. Αυτό συμβαίνει επειδή όταν οι τύποι αναλύονται επιτυχώς, καθορίζονται οι εξαρτήσεις των κελιών και η ορθότητα των τελευταίων τιμών. Αν δεν μπορεί να αναλυθεί ο τύπος, δεν μπορεί να εγγυηθεί η ορθότητα της τιμής του κελιού.
Προσθήκη Τύπου Φύλλου Γραφήματος σε Παρουσίαση
Πρώτα, προσθέστε ένα γράφημα στην πρώτη διαφάνεια μιας νέας παρουσίασης με IShapeCollection.getShapes.addChart. Το φύλλο του γραφήματος δημιουργείται αυτόματα και μπορεί να προσπελαστεί με τη Chart.getChartData.getChartDataWorkbook μέθοδο:
Presentation pres = new Presentation();
try {
IChart chart = pres.getSlides().get_Item(0).getShapes().addChart(ChartType.ClusteredColumn, 150, 150, 500, 300);
IChartDataWorkbook workbook = chart.getChartData().getChartDataWorkbook();
// ...
} finally {
if (pres != null) pres.dispose();
}
Ας γράψουμε κάποιες τιμές σε κελιά με τη IChartDataCell.setValue ιδιότητα του τύπου Object, που σημαίνει ότι μπορείτε να ορίσετε οποιαδήποτε τιμή στην ιδιότητα:
workbook.getCell(0, "F2").setValue(-2.5);
workbook.getCell(0, "G3").setValue(6.3);
workbook.getCell(0, "H4").setValue(3);
Τώρα, για να γράψετε τύπο στο κελί, μπορείτε να χρησιμοποιήσετε τη IChartDataCell.setFormula μέθοδο:
Note: Η μέθοδος IChartDataCell.setFormula χρησιμοποιείται για ορισμό αναφορών κελιών στυλ A1.
Για να ορίσετε την αναφορά κελιού R1C1Formula, μπορείτε να χρησιμοποιήσετε τη μέθοδο IChartDataCell.setR1C1Formula:
Στη συνέχεια, αν προσπαθήσετε να διαβάσετε τις τιμές από τα κελιά B2 και C2, θα υπολογιστούν:
Object value1 = cell1.getValue(); // 7.8
Object value2 = cell2.getValue(); // 2.1
Λογικές Σταθερές
Μπορείτε να χρησιμοποιήσετε λογικές σταθερές όπως FALSE και TRUE σε τύπους κελιών:
workbook.getCell(0, "A2").setValue(false);
IChartDataCell cell = workbook.getCell(0, "B2");
cell.setFormula("A2 = TRUE");
Object value = cell.getValue(); // η τιμή περιέχει λογικό "false"
Αριθμητικές Σταθερές
Οι αριθμοί μπορούν να χρησιμοποιηθούν σε κοινή ή επιστημονική σημειογραφία για τη δημιουργία τύπου φύλλου γραφήματος:
workbook.getCell(0, "A2").setFormula("1 + 0.5");
workbook.getCell(0, "B2").setFormula(".3 * 1E-2");
Σταθερές Συμβολοσειράς
Η σταθερά συμβολοσειράς (ή κυριολεκτική) είναι μια συγκεκριμένη τιμή που χρησιμοποιείται ακριβώς όπως είναι και δεν αλλάζει. Οι σταθερές συμβολοσειράς μπορεί να είναι: ημερομηνίες, κείμενα, αριθμοί κτλ:
workbook.getCell(0, "A2").setFormula("\"abc\"");
workbook.getCell(0, "B2").setFormula("\"2/3/2020 12:00\"");
Σταθερές Σφαλμάτων
Μερικές φορές δεν είναι δυνατόν να υπολογιστεί το αποτέλεσμα από τον τύπο. Σε αυτή την περίπτωση, ο κωδικός σφάλματος εμφανίζεται στο κελί αντί για την τιμή του. Κάθε τύπος σφάλματος έχει συγκεκριμένο κωδικό:
- #DIV/0! - ο τύπος προσπαθεί να διαιρέσει με το μηδέν.
- #GETTING_DATA - μπορεί να εμφανιστεί σε κελί όταν η τιμή του υπολογίζεται ακόμη.
- #N/A - η πληροφορία λείπει ή δεν είναι διαθέσιμη. Μερικοί λόγοι μπορεί να είναι: κενά κελιά που χρησιμοποιούνται στον τύπο, επιπρόσθετος χαρακτήρας κενό, ορθογραφικό λάθος, κτλ.
- #NAME? - δεν μπορεί να βρεθεί κάποιο κελί ή άλλο αντικείμενο τύπου με το όνομά του.
- #NULL! - μπορεί να εμφανιστεί όταν υπάρχει λάθος στον τύπο, όπως: (,) ή χαρακτήρας κενό αντί για άνω κλεστή (:).
- #NUM! - ο αριθμός στον τύπο μπορεί να είναι άκυρος, πολύ μεγάλος ή πολύ μικρός, κτλ.
- #REF! - άκυρη αναφορά κελιού.
- #VALUE! - μη αναμενόμενος τύπος τιμής. Για παράδειγμα, τιμή συμβολοσειράς σε αριθμητικό κελί.
IChartDataCell cell = workbook.getCell(0, "A2");
cell.setFormula("2 / 0");
Object value = cell.getValue(); // η τιμή περιέχει τη συμβολοσειρά "#DIV/0!"
Αριθμητικοί Τελεστές
Μπορείτε να χρησιμοποιήσετε όλους τους αριθμητικούς τελεστές σε τύπους φύλλου γραφήματος:
| Τελεστής | Σημασία | Παράδειγμα |
|---|---|---|
| + (πρόσημο) | Πρόσθεση ή μοναδιαίο πρόσημο | 2 + 3 |
| - (πλην) | Αφαίρεση ή ανάστροφη τιμή | 2 - 3 -3 |
| * (αστέρι) | Πολλαπλασιασμός | 2 * 3 |
| / (πλάγια γραμμή) | Διαίρεση | 2 / 3 |
| % (ποσοστό) | Ποσοστό | 30% |
| ^ (καρέ) | Αναβάθμιση σε δύναμη | 2 ^ 3 |
Note: Για αλλαγή της σειράς εκτέλεσης, τοποθετήστε σε παρενθέσεις το τμήμα του τύπου που πρέπει να υπολογιστεί πρώτο.
Τελεστές Σύγκρισης
Μπορείτε να συγκρίνετε τις τιμές κελιών με τους τελεστές σύγκρισης. Όταν δύο τιμές συγκρίνονται με αυτούς τους τελεστές, το αποτέλεσμα είναι λογική τιμή είτε TRUE είτε FALSE:
| Τελεστής | Σημασία | Σημασία |
|---|---|---|
| = (σημείο ισότητας) | Ίσο με | A2 = 3 |
| <> (σημείο ανι مسا) | Διάφορο από | A2 <> 3 |
| > (σημείο μεγαλύτερο) | Μεγαλύτερο από | A2 > 3 |
| >= (σημείο μεγαλύτερο ή ίσο) | Μεγαλύτερο ή ίσο με | A2 >= 3 |
| < (σημείο μικρότερο) | Μικρότερο από | A2 < 3 |
| <= (σημείο μικρότερο ή ίσο) | Μικρότερο ή ίσο με | A2 <= 3 |
Αναφορές Κελιών Στυλ A1
Αναφορές κελιών στυλ A1 χρησιμοποιούνται για τα φύλλα εργασίας, όπου η στήλη έχει αλφαβητικό αναγνωριστικό (π.χ. “A") και η γραμμή αριθμητικό (π.χ. “1"). Οι αναφορές κελιών στυλ A1 μπορούν να χρησιμοποιηθούν ως εξής:
| Αναφορά κελιού | Παράδειγμα | Απόλυτη | Σχετική | Μικτή |
|---|---|---|---|---|
| Κελί | $A$2 | A2 | A$2 $A2 |
|
| Γραμμή | $2:$2 | 2:2 | ‑ | ‑ |
| Στήλη | $A:$A | A:A | ‑ | ‑ |
| Περιοχή | $A$2:$C$4 | A2:C4 | $A$2:C4 A$2:$C4 |
Παράδειγμα χρήσης αναφοράς κελιού στυλ A1 σε τύπο:
workbook.getCell(0, "A2").setFormula("C3 + SUM(F2:H5)");
Αναφορές Κελιών Στυλ R1C1
Αναφορές κελιών στυλ R1C1 χρησιμοποιούνται για τα φύλλα εργασίας, όπου τόσο η γραμμή όσο και η στήλη έχουν αριθμητικό αναγνωριστικό. Οι αναφορές κελιών στυλ R1C1 μπορούν να χρησιμοποιηθούν ως εξής:
| Αναφορά κελιού | Παράδειγμα | Απόλυτη | Σχετική | Μικτή |
|---|---|---|---|---|
| Κελί | R2C3 | R[2]C[3] | R2C[3] R[2]C3 |
|
| Γραμμή | R2 | R[2] | ‑ | ‑ |
| Στήλη | C3 | C[3] | ‑ | ‑ |
| Περιοχή | R2C3:R5C7 | R[2]C[3]:R[5]C[7] | R2C3:R[5]C[7] R[2]C3:R5C[7] |
Παράδειγμα χρήσης αναφοράς κελιού στυλ A1 σε τύπο:
workbook.getCell(0, "A2").setR1C1Formula("R2C4 + SUM(R5C6:R7C9)");
Προκαθορισμένες Συναρτήσεις
Υπάρχουν προκαθορισμένες συναρτήσεις που μπορούν να χρησιμοποιηθούν στους τύπους για να απλοποιήσουν την υλοποίησή τους. Αυτές οι συναρτήσεις περιλαμβάνουν τις πιο συχνά χρησιμοποιούμενες λειτουργίες, όπως:
- ABS
- AVERAGE
- CEILING
- CHOOSE
- CONCAT
- CONCATENATE
- DATE (σύστημα ημερομηνίας 1900)
- DAYS
- FIND
- FINDB
- IF
- INDEX (μορφή αναφοράς)
- LOOKUP (μορφή διανύσματος)
- MATCH (μορφή διανύσματος)
- MAX
- SUM
- VLOOKUP
Συχνές Ερωτήσεις
Υποστηρίζονται εξωτερικά αρχεία Excel ως πηγή δεδομένων για ένα γράφημα με τύπους;
Ναι. Το Aspose.Slides υποστηρίζει εξωτερικά βιβλία εργασίας ως πηγή δεδομένων γραφήματος, επιτρέποντας τη χρήση τύπων από ένα XLSX εκτός της παρουσίασης.
Μπορούν οι τύποι γραφήματος να αναφέρονται σε φύλλα εντός του ίδιου βιβλίου εργασίας με όνομα φύλλου;
Ναί. Οι τύποι ακολουθούν το τυπικό μοντέλο αναφοράς του Excel, επομένως μπορείτε να αναφέρετε άλλα φύλλα εντός του ίδιου βιβλίου ή ενός εξωτερικού βιβλίου. Για εξωτερικές αναφορές, συμπεριλάβετε τη διαδρομή και το όνομα του βιβλίου χρησιμοποιώντας τη σύνταξη του Excel.