Εφαρμογή τύπων φύλλου εργασίας γραφήματος σε παρουσιάσεις στο Android

Επισκόπηση

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

Αυτό το άρθρο εξηγεί πώς να χρησιμοποιήσετε τύπους φύλλου εργασίας στα δεδομένα γραφήματος, ώστε οι τιμές των κελιών να μπορούν να υπολογίζονται και να ενημερώνονται αυτόματα αντί να εισάγονται χειροκίνητα. Δείχνει πώς να ορίζετε τύπους, να χρησιμοποιείτε αναφορές στυλ A1 και R1C1, να επανυπολογίζετε τους τύπους του βιβλίου εργασίας και να εργάζεστε με τις υποστηριζόμενες σταθερές, τελεστές, αναφορές κελιών και προεπιλεγμένες συναρτήσεις που διατίθενται για φύλλα εργασίας γραφήματος σε παρουσιάσεις.

Σχετικά με τους Τύπους Φύλλου Εργασίας Γραφήματος σε Παρουσιάσεις

Φύλλο δεδομένων γραφήματος (ή φύλλο εργασίας γραφήματος) σε μια παρουσίαση είναι η πηγή δεδομένων του γραφήματος. Το φύλλο δεδομένων γραφήματος περιέχει δεδομένα, τα οποία αντιπροσωπεύονται στο γράφημα με γραφικό τρόπο. Όταν δημιουργείτε ένα γράφημα στο PowerPoint, το φύλλο εργασίας που συσχετίζεται με αυτό το γράφημα δημιουργείται αυτόματα. Το φύλλο εργασίας δημιουργείται για όλους τους τύπους γραφημάτων: γράφημα γραμμής, ραβδόγραμμα, ηλιακό διάγραμμα, πίτα κ.λπ. Για να δείτε το φύλλο δεδομένων γραφήματος στο PowerPoint, πρέπει να κάνετε διπλό κλικ στο γράφημα:

todo:image_alt_text

Το φύλλο δεδομένων γραφήματος περιέχει τα ονόματα των στοιχείων του γραφήματος (Όνομα Κατηγορίας: 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:

Σημείωση: η μέθοδος 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(); // η τιμή περιέχει boolean "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

Σημείωση: Για να αλλάξετε τη σειρά αξιολόγησης, τοποθετήστε σε παρενθέσεις το τμήμα του τύπου που θα υπολογιστεί πρώτα.

Τελεστές Σύγκρισης

Μπορείτε να συγκρίνετε τις τιμές των κελιών με τους τελεστές σύγκρισης. Όταν δύο τιμές συγκρίνονται χρησιμοποιώντας αυτούς τους τελεστές, το αποτέλεσμα είναι λογική τιμή είτε 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.