Εφαρμογή Τύπων Φύλλου Εργασίας Γραφήματος σε Παρουσιάσεις Χρησιμοποιώντας PHP

Επισκόπηση

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

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

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

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

todo:image_alt_text

Το φύλλο εργασίας περιέχει τα ονόματα των στοιχείων του γραφήματος (Όνομα Κατηγορίας: Category1, Όνομα Σειράς) και έναν πίνακα με αριθμητικά δεδομένα που αντιστοιχούν σε αυτές τις κατηγορίες και σειρές. Από προεπιλογή, όταν δημιουργείτε νέο γράφημα, τα δεδομένα του φύλλου εργασίας ορίζονται με τα προεπιλεγμένα δεδομένα. Στη συνέχεια μπορείτε να αλλάξετε τα δεδομένα του φύλλου εργασίας χειροκίνητα.

Συνήθως, το γράφημα αντιπροσωπεύει πολύπλοκα δεδομένα (π.χ. χρηματοοικονομικές ή επιστημονικές αναλύσεις), έχοντας κελιά που υπολογίζονται από τις τιμές άλλων κελιών ή από άλλες δυναμικές πληροφορίες. Ο χειροκίνητος υπολογισμός της τιμής ενός κελιού και η ενσωμάτωση της τιμής στο κελί καθιστούν δύσκολη τη μελλοντική αλλαγή. Εάν αλλάξετε την τιμή ενός συγκεκριμένου κελιού, όλα τα κελιά που εξαρτώνται από αυτό θα χρειαστεί να ενημερωθούν επίσης. Επιπλέον, τα δεδομένα του πίνακα μπορεί να εξαρτώνται από δεδομένα άλλων πινάκων, δημιουργώντας ένα σύνθετο σχήμα δεδομένων παρουσίασης που χρειάζεται ενημέρωση με εύκολο και ευέλικτο τρόπο.

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

Στην Aspose.Slides το φύλλο εργασίας γραφήματος αναπαρίσταται με τη μέθοδο ChartData::getChartDataWorkbook του τύπου ChartDataWorkbook. Ο τύπος φύλλου εργασίας μπορεί να οριστεί και να αλλάξει με τη μέθοδο ChartDataCell::setFormula. Η παρακάτω λειτουργικότητα υποστηρίζεται για τύπους στην Aspose.Slides:

  • Λογικές σταθερές
  • Αριθμητικές σταθερές
  • Σταθερές συμβολοσειρών
  • Σταθερές σφάλματος
  • Αριθμητικοί τελεστές
  • Τελεστές σύγκρισης
  • Αναφορές κελιών στυλ A1
  • Αναφορές κελιών στυλ R1C1
  • Προεπιλεγμένες συναρτήσεις

Συνήθως, τα φύλλα εργασίας αποθηκεύουν τις τελευταίες υπολογισμένες τιμές τύπων. Εάν μετά τη φόρτωση της παρουσίασης τα δεδομένα του γραφήματος δεν έχουν αλλάξει, η μέθοδος ChartDataCell::getValue επιστρέφει αυτές τις τιμές κατά την ανάγνωση. Ωστόσο, εάν τα δεδομένα του φύλλου εργασίας είχαν αλλάξει, κατά την ανάγνωση της τιμής ρίχνει το CellUnsupportedDataException για τους μη υποστηριζόμενους τύπους. Αυτό συμβαίνει επειδή όταν οι τύποι αναλύονται επιτυχώς, οι εξαρτήσεις των κελιών προσδιορίζονται και η ορθότητα των τελευταίων τιμών καθορίζεται. Αν όμως ο τύπος δεν μπορεί να αναλυθεί, η ορθότητα της τιμής του κελιού δεν μπορεί να εγγυηθεί.

Προσθήκη Τύπου Φύλλου Εργασίας Γραφήματος σε Παρουσίαση

Πρώτα, προσθέστε ένα γράφημα στην πρώτη διαφάνεια μιας νέας παρουσίασης με τη μέθοδο ShapeCollection::addChart. Το φύλλο εργασίας του γραφήματος δημιουργείται αυτόματα και μπορεί να προσπελαστεί με τη μέθοδο ChartData::getChartDataWorkbook:

  $pres = new Presentation();
  try {
    $chart = $pres->getSlides()->get_Item(0)->getShapes()->addChart(ChartType::ClusteredColumn, 150, 150, 500, 300);
    $workbook = $chart->getChartData()->getChartDataWorkbook();
    # ...
  } finally {
    if (!java_is_null($pres)) {
      $pres->dispose();
    }
  }

Ας γράψουμε κάποιες τιμές σε κελιά με τη μέθοδο ChartDataCell::setValue του τύπου Object, που σημαίνει ότι μπορείτε να ορίσετε οποιαδήποτε τιμή:

  $workbook->getCell(0, "F2")->setValue(-2.5);
  $workbook->getCell(0, "G3")->setValue(6.3);
  $workbook->getCell(0, "H4")->setValue(3);

Τώρα για να γράψετε τύπο στο κελί, μπορείτε να χρησιμοποιήσετε τη ChartDataCell::setFormula μέθοδο.

Σημείωση: Η μέθοδος ChartDataCell::setFormula χρησιμοποιείται για ορισμό αναφορών κελιών στυλ A1.

Για να ορίσετε τύπο σε στυλ R1C1, μπορείτε να χρησιμοποιήσετε τη μέθοδο ChartDataCell::setR1C1Formula.

Έπειτα, εάν προσπαθήσετε να διαβάσετε τις τιμές από τα κελιά B2 και C2, αυτές θα υπολογιστούν:

  $value1 = $cell1->getValue();// 7.8

  $value2 = $cell2->getValue();// 2.1


Λογικές Σταθερές

Μπορείτε να χρησιμοποιήσετε λογικές σταθερές όπως FALSE και TRUE σε τύπους κελιών:

  $workbook->getCell(0, "A2")->setValue(false);
  $cell = $workbook->getCell(0, "B2");
  $cell->setFormula("A2 = TRUE");
  $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! – μη αναμενόμενος τύπος τιμής. Για παράδειγμα, συμβολοσειρά σε αριθμητικό κελί.
  $cell = $workbook->getCell(0, "A2");
  $cell->setFormula("2 / 0");
  $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]

Παράδειγμα χρήσης αναφοράς κελιού στυλ R1C1 σε τύπο:

  $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.