Was ist RGraph?

rgraph logo Es ist eine JavaScript-Diagrammbibliothek, die Diagramme dynamisch mit JavaScript und dem HTML5-Canvas-Tag erzeugt. RGraph kann verschiedenste Typen von Diagrammen erzeugen, z. B. Linien-, Streu-, Säulen und Torten-Diagramme im 2D oder 3D Erscheinungsbild.

RGraph ist schnell, attraktiv, einfach zu bedienen und kostenlos für den kommerziellen Gebrauch. Die Unterstützung für Desktop- und mobile Canvas-Elemente ist hervorragend und ermöglicht die Erstellung von Diagrammen und Dashboards, die Sie auf einer Vielzahl von Geräten verwenden können. Dank des schnellen Renderns des Canvas-Tags können Ihre Diagramme bis zu 10-mal schneller sein als Flash- oder SVG-basierte Bibliotheken. Dies bedeutet, dass Sie gut aussehende und informative Diagramme und Dashboards erstellen können.

Was ist php-RGraph?

php-RGraph ist eine Implementierung zur Verwendung von RGraph über die PHP-Schnittstelle. Nicht nur für PHP-Entwickler vereinfacht es die Verwendung von RGraph und erweitert RGraph um alle Funktionen, die PHP bieten kann. Die Schnittstellen ermöglichen sogar das Schreiben von reinem PHP-Code, um attraktive Diagramme zu erstellen, ohne dass Kenntnisse in der Javascript-Programmierung erforderlich sind.


Hauptzweck von Diagrammen ist die Visualisierung von Daten. Mit php-RGraph erhalten Sie alle Funktionen zum Abrufen und Verwenden von Daten aus mySql-Datenbanken, aus lokalen Dateien, Daten von Remote- oder lokalen Servern, aus CSV-Dateien und sogar aus Google-Tabellen. Um diese Daten zu visualisieren, "kennt" php-RGraph etwa 580 verschiedene Diagrammeigenschaften für alle Diagramme, die RGraph angeboten hat, und verwendet dieses Wissen, um eine stabile Schnittstelle zu den Javascript-Bibliotheken von RGraph aufzubauen. Die aktuelle (diese) Version von php-RGraph basiert auf der Version V6.18 von RGraph.

Wie setzt man php-RGraph ein

Diese Anleitung soll Ihnen helfen, die Struktur von php-RGraph zu verstehen und Ihnen einige Informationen und Ratschläge zur Verwendung von php-RGraph auf Ihrer Website geben.

Dieser Guide hat vier Abschnitte
  1. Struktur von php-RGraph charts
  2. Verwendung von Templates
  3. Einsatz von php-RGraph auf ihrer Website
  4. php-RGraph unter Joomla

Mit RGraph erstellen Sie Diagramme, indem Sie Javascript-Code schreiben, wohingegen sie mit php-RGraph Ihre Diagrammobjekte nur mit PHP kodieren. Wir werden nun Schritt für Schritt zeigen, was zu tun ist, damit eine Anwendung mit php-RGraph auf Ihrer Site ausgeführt werden kann.

Installation von php-RGraph

Die Installation ist unkompliziert. Sobald Sie die Installationsdatei "php-RGraph-V2.1.19.zip" heruntergeladen haben, entpacken Sie sie und laden Sie alle Ordner und Dateien auf Ihre Website in ein zugängliches Verzeichnis hoch. (oder wenn Sie XAMPP verwenden, kopieren Sie Ordner und Dateien in ein zugängliches Verzeichnis. "Zugänglich" bedeutet, dass Sie Zugriff auf alle Dateien über ihren Webserver (z. B. Apache) und den Browser haben. Bitte behalten Sie die Verzeichnisstruktur und die Benennung von Ordnern bei (keine Verzeichniss umbenennen).

Überprüfen Sie dann, ob Sie über folgende URL auf die Dokumentation von php-RGraph zugreifen können:
http://your-host/ihr-installations-verszeichnis/RGraph/index.html. Wenn dies in Ordnung ist, können Sie die Referenz von RGraph lesen und die bereitgestellten Beispiele einsetzen oder testen.

Struktur von php-RGraph Diagramm Scripten

Um Ihnen eine Vorstellung davon zu geben, wie alles funktioniert, sollten Sie einige der bereitgestellten Beispiele überprüfen. (Bitte verwenden Sie folgenden Link für die php-RGraph - Beispiele). Auf dieser Beispielseite haben Sie die Möglichkeit, ein Beispiel anzuzeigen und den php-Code für das Erstellen von Diagrammen anzusehen. Mit diesem Code wird auch die Struktur von php-RGraph Scripten veranschaulicht. Ein php-Diagrammscript hat hier immer diese Komponenten:


  • Jedes Diagrammskript muss "wissen", wo sich Ressourcen für Diagramme befinden. Dies wird mit der Einbettung (include) des Scripts "environment.php" definiert. Wenn dieses Skript nicht richtig funktioniert können Diagramme nicht erstellt werden. Sehen sie hier Layout von "environment.php", das aufzeigt, welche Informationen benötigt werden:
    <?php
    // php-Rgraph root directory
    $rgraph_root = "/ihr-installations-verzeichnis/RGraph";
    
    // php-Rgraph library
    $lib = $_SERVER['DOCUMENT_ROOT'] . $rgraph_root . "/lib/rgraph_chart.php";
    if (!file_exists($lib))
     die ("Error: $lib not found");
    require_once ($lib);
    
    // directory for templates
    $templates =  $_SERVER['DOCUMENT_ROOT'] . $rgraph_root . "/templates/";
    if (!file_exists($templates))
        die ("Error: $templates not found");
    
    // directory for RGraphs's javascript library
    $rgraph_libraries = $rgraph_root . "/libraries/";
    
    // (optional) directory for Utilities
    $utility =   $_SERVER['DOCUMENT_ROOT'] . $rgraph_root . '/lib/util.php';
    
    Hinweis: Die Vergabe von Variablne-Namen ist wichtig für den Einsatz von Templates.

    Seit der Version 2.1.1 von php-RGraph sind alle Klasssen in Namespaces eingebunden, deshalb ist es notwendig, neben der include file "environment.php" mit "use"-Anweisungen die Namespaced Klassen anzugeben:
    include_once "environment.php";
    use phpRGraph\rgraph_chart;
    use phpRGraph\rgraph_options;
    


  • Mit vier Codezeilen definieren Sie das Hauptlayout Ihres Diagramms:
    $template = "default.php";
    $draw_option = "draw();";
    $width = "500";
    $height = "350";
    
    Sie definieren die Breite ("$width") und Höhe ("$height") des Canvas. und welche Methode RGraph zur Anzeigen des Diagramms verwendent soll ("$draw_option"). Und Sie müssen angeben, welches Template zum Rendern des Diagramms verwendet werden soll.


  • Diagrammdaten können aus verschiedenen Quellen stammen:
    • Definieren Sie ein Array numerischer Daten direkt in Ihrem Diagrammskriptt
    • Daten aus Datei abrufen
    • Daten von einem lokalen oder entfernten Server anfordern
    • Daten aus der MySQL-Datenbank abrufen
    • Daten aus csv-Datei abrufen
    • Daten aus Google Tabellen (sheets) abrufen
    • Daten über eine mathematische Formel generieren
    Die php-Klasse rgraph_chart verfügt über verschiedene Methoden, die Sie bei der Bereitstellung von Daten für Ihr Diagramm unterstützen. Weitere Informationen finden Sie im Referenzhandbuch oder Schauen Sie sich die Beispiele an.


  • Der erste Schritt besteht darin, ein rgraph_chart-Objekt zu definieren:
    $chart = new rgraph_chart($id, $data, $chart_type);
    
    • "$id" ist erforderlich und definiert die Canvas-ID (z. B." cvs ").
    • "$data" definiert die Daten, die für das Diagramm verwendet werden sollen
    • "$chart_type" legt den gewünschten Diagrammtyp fest (z. B. "Pie")
      gültige Typen sind:
      • Bar
      • HBar
      • Bipolar
      • Line
      • Pie
      • Fuel
      • Funnel
      • Gauge
      • Gantt
      • Meter
      • Odometer
      • Radar
      • Rose
      • RScatter
      • SemiCircularProgress
      • Scatter
      • Waterfall
    Nachdem Sie ein rgraph_chart-Objekt erstellt haben, können Sie ein rgraph_options-Objekt erstellen und Diagrammeigenschaften definieren.
     $options = new rgraph_options($ini-file);
     $options->set_option("title", "Mein erstes Diagramm");
      ...
    
    Mit dem optionalen Parameter "$ini_file" können Sie eine INI-Datei mit vordefinierten Diagramm-Eigenschaften angeben (z. B. Schriftgrößen, Farben, Schriftfamilien usw.).

    php-RGraph "kennt" mehr als 500 verschiedene Diagrammeigenschaften für fast alle von RGraph angebotenen Diagramme. Die php-Klasse rgraph_options verfügt über verschiedene Methoden, die Sie bei der Bereitstellung von Diagrammeigenschaften unterstützen. Weitere Informationen finden Sie im Referenzhandbuch, in den Beispielen oder besuchen sie die Homepage von RGraph.



  • Nachdem Sie das Diagrammobjekt und seine Eigenschaften erstellt haben, müssen Sie zuerst die Eigenschaften ($options object) für das Diagrammobjekt deinieren. Danach erstellen Sie ein JSON-Objekt, das mit RGraph verwendet werden soll:
    $chart->set_options($options);
    $rgraph_json = $chart->toPrettyString();
    


  • Dies ist eine einfache Aufgabe, da das Verzeichnis des Templates mit dem include script "environment.php" definiert wurde. Ihr Code sieht also so aus:
     include_once ($templates . $template);
    

Verwendung von Templates

Ein php-RGraph-Template ist ein vorgefertigtes Skelett zum Generierung von HTML-Code (hauptsächlich vom RGraph Script-Tag) zum Anzeigen Ihres Diagramms auf Ihrer Website. Es nimmt Variablen entgegen, die von Ihrem Diagrammscript erstellt wurden, und "rendert" sie in HTML Quelltext. Templates sind PHP-Dateien und werden folgendermaßen aufgebaut:
  1. template header Datei
  2. template body Datei

Die Template-Header-Datei enthält reinen PHP-Code. Dieser Code wird zur Überprüfung und Einstellung der benötigten Variablen verwendet. Template-Header-Dateien sind meist gleich in ihrer Funktionalität und können deshalb in den meisten Templates Body Dateien verwendet werden.

<?php
// check settings
if (! isset($chart))
  die ("Error: rgraph_chart object not defined");
if (! isset($rgraph_json))
      die ("Error: json object is not defined");
$id = $chart->get_id();
$chart_type = $chart->get_chartType();
$script= '<script src="' . $rgraph_libraries . $chart->getScript($chart_type) . '">';
echo $script;

// check for defined values
if (! isset($width))
    $width = 400;
if (! isset($height))
    $height = 250;
if (! isset($draw_option))
    $draw_option = "draw();";
if (! isset($canvas_style))
    $canvas_style = "";
if (! isset($canvas_class))
    $canvas_class = "";
if (! isset($chart_name))
    $chart_name = "chart";
if (! isset($event_script))
    $event_script = "";
if (! isset($chart_script))
    $chart_script = "";

Template body Dateien enthalten HTML- und PHP-Code. Dieser Code wird verwendet, um die erforderlichen Werte für Skript- und HTML-Tags zu erstellen. Schauen Sie sich "default.php" an, das in den meisten Beispielen verwendet wird

<?php

<?php include_once "default_header.php"; ?>

<canvas id="<?php echo $id; ?>" width="<?php echo $width; ?>" height="<?php echo $height; ?>" 
 style=" <?php echo $canvas_style; ?>" class="<?php echo $canvas_class; ?>">
    [No canvas support]>
</canvas>
<script>
jQuery(document).ready(function() {
 
  <?php echo $event_script; ?>
   
  RGraph.reset('<?php echo $id; ?>');  
   
  var <?php echo $chart_name; ?> = new RGraph.<?php echo $chart_type; ?> (
   <?php echo $rgraph_json; ?>).<?php echo $draw_option; ?>

   <?php echo $chart_script; ?>
});
</script>

Ich habe den gesamten PHP-Code grün markiert - das haben Sie vielleicht bemerkt Die meisten Variablen wurden von dem Diagrammskript definiert.

Die rot markierte include-datei, "default_header.php" wurde verwendet um Standardeinstellungen für fehlende Variablen festzulegen (z. B. für "$ chart_name", "event_script" oder "canvas_style").

Webpage vorbereiten

php-RGraph verwendet für die Anzeige von Diagrammen das Javascript-Framework "jQuery". Wenn Sie es nicht bereits verwenden, müssen Sie die Javascript-Bibliothek dafür hinzufügen. Das php-RGraph-Paket hat diese Bibliothek im Verzeichnis "../RGraph/js" gespeichert.
Zusätzlich müssen Sie geeignete RGraph-Javascript-Bibliotheken für Typ und Eigenschaften Ihres Diagramms hinzufügen. Wenn Sie nicht wissen, welche Bibliotheken Sie benötigen, fügen Sie "RGraph.common.lib.js" hinzu, das alle gängigen Bibliotheken enthält, die mit Diagrammen verwendet werden sollen. Der notwendige Code sieht möglicherweise dann so aus:
<script src="/../js/jquery.min.js" type="text/javascript">
<script src="/../libraries/RGraph.common.lib.js" type="text/javascript">

Wie es funktioniert...

php-RGraph verwendet zur Anzeige von Diagrammen das Javascript-Framework jQuery. Für Diagramme werden diese beiden Komponenten verwendet:
  • die jQuery.load function
  • ein div Element für die Positionierung des Diagramms
jQuery.load ist eine Ajax-Implementierung von jQuery. Mit Ajax können Webanwendungen asynchron Daten an einen Server senden und von diesem abrufen (im Hintergrund) ohne die Anzeige und das Verhalten der jeweilige Seite zu beeinträchtigen. Um jQuery.load zu verwenden, müssen Sie nur wenige Zeilen Javascript-Code codieren:
<script type="text/javascript">
jQuery(document).ready(function() { 
 var url = "../samples/logo.php";
 jQuery("#show-sample").load( url, function() {
   }); 
});
</script>
Ein Diagrammskript logo.php aus meinen Beispielen wird von jQuery.load geladen. Zusätzlich dazu wird ein div-Element mit der ID "show-sample" hinzugefügt, das dann zum Anzeigen des Diagramms verwendet wird:
<div id="show-sample" style="float:right"></div>
Sie können das Ergebnis dieser Implementierung anhand eines Balkendiagramms sehen, das auf dieser Seite angezeigt wird. Das Diagramm wird geladen und angezeigt, wenn die Seite geladen wurde (wenn das Ereignis "document.ready" ausgelöst wird).

Sie können Diagramme aber auch interaktiv mit jQuery.load anzeigen. Wenn Sie auf folgenden Link klicken, werden Sie eine Anzeige von einem Meter-Diagramm auslösen. Das Original Balkendiagramm wird dann das durch das Meter-Diagramm ersetzt werden. Wie habe ich das gemacht? Ich habe nur einen kleinen Codeteil hinzugefügt: Mit dem HTML-<a>-Tag für den Link habe ich ein "onlick" -Attribut hinzugefügt, um das Skript "show_chart ()" auszulösen. Dieses Skript wurde dem Skript-Tag hinzugefügt:

 function show_chart() {
    var url = "../samples/meter.php";  
    jQuery("#show-sample" ).load( url, function() {
   });
}
Da dieselbe Div-ID wie für das Balkendiagramm verwendet wird, wird das Balkendiagramm ersetzt.

Bei Joomla gibt es keine besonderen Überlegungen. Sie fügen Diagramme mit jQuery.load hinzu. Nachdem Sie Ihre php-Diagrammscripte erstellt haben, müssen Sie nur noch html-Script-Tags für die Funktion jQuery.load und div-Elemente zum Inhalt Ihres Artikels hinzufügen. Vergessen Sie nicht, geeignete RGraph-Javascript-Bibliotheken für den Typ und die Eigenschaften Ihres Diagramms hinzuzufügen. Sie sollten die angepasste Bibliothek "RGraph.common.lib.js" von php-RGraph hinzufügen - z. B.:

<script src="/../libraries/RGraph.common.libs.js" type="text/javascript">

[No canvas support]>

Die einfachste Möglichkeit, php-RGraph zu verwenden, besteht darin, php-rgraph für Joomla zu installieren und zu verwenden. Dies ist ein Inhalts-Plugin, das auf php-RGraph basiert und es Ihnen ermöglicht, Diagramme zu erstellen, ohne in HTML oder PHP codieren zu müssen.

Wenn Sie meine Joomla-Erweiterung "jphpx" installiert haben, können Sie Ihren php-RGraph-Skriptcode mithilfe von jphpx in einen Artikel einfügen Plugin-Funktion, z.B:
{jphpx [php-apps/RGraph/samples_jphpx/bar_simple.php]}
Hinweis: Wenn Sie ini-files für rgraph_options mit jphpx verwenden, müssen Sie den Dateispeicherort von ini-files in Ihrer environment.php angeben, damit Sie in Ihrem Diagrammskript darauf verweisen können.

rgraph Klassen

php-RGraph-Schnittstellen zu RGraph-Diagrammen werden mit zwei PHP-Klassen erstellt. Die Klasse "rgraph_chart" unterstützt hauptsächlich das Bereitstellen von Daten für Diagramme und das Erstellen von JSON-Objekten für RGraph. Die Klasse "rgraph_options" wird verwendet, um Eigenschaften für Diagramme zu definieren.

 

RGraph Methoden

php-RGraph - Klasse "rgraph_chart": Methoden

 

Methoden der Klasse "rgraph_chart"

rgraph_chart" bietet diese Unterstützung zum Erstellen von Diagrammen basierend auf "RGraphs Javascript Framework":
  1. Unterstützung der Datenerstellung und -bereitstellung für Diagrammdiagramme
  2. Stellt Setter- und Getter-Methoden für das Objekt rgraph_chart bereit
  3. Liefert Daten im JSON-Format, die mit RGraph verwendet werden können

Um weitere Informationen neben den hier gezeigten Referenzen zu erhalten, schauen Sie sich meine Beispiele an oder besuchen Sie die Homepage von RGraph.

php-RGraph - Klasse "rgraph_options": Methoden

 

Methoden der Klasse "rgraph_options"

"rgraph_options" bietet diese Unterstützung zum Erstellen von Diagrammen basierend auf "RGraphs Javascript Framework":
  1. Unterstützt die Erstellung und Definition von Eigenschaften für RGraph-Diagramme
  2. Stellt Setter- und Getter-Methoden für das Objekt "rgraph_options" bereit
Sobald man ein rgraph_chart-Objekt erstellt hat, kann man ein rgraph_options-Objekt erstellen und Diagrammeigenschaften definieren:
 $options = new rgraph_options();
 $options->set_option("name", "wert");
Anschließend legen (definieren) Sie die Diagrammeigenschaften für das Objekt "rgraph_chart" fest:
 $chart->set_options($options); 

Um weitere Informationen neben den hier gezeigten Referenzen zu erhalten, schauen Sie sich meine Beispiele an oder besuchen Sie die Homepage von RGraph.

php-RGraph - Properties Reference for supported Charts

(Die angezeigten Beschreibungen sind nur in Englisch verfügbar.)

 

Wählen Sie Diagrammtype und Attribute aus, mit einem Klick sehen Sie eine Beschreibung

Diagrammtype

 

Zusätzliche Funktionen von dem php-RGraph Package

Das php-RGraph Package bietet zwei weiterte php-Funktionen an. Diese beiden können zum Generieren von Daten Linien- oder Streudiagramme verwendet werden.

 

calculate_Regression

Beschreibung
Die Funktion führt eine grundlegende Regressionsanalyse durch. Es bietet drei integrierte Berechnungen (alle basieren auf dem linearen Regressionsmodell ), die durch folgende Funktionen beschrieben werden:
  1. f(x) = ax + b (lineare Regression)
  2. f(x) = abx (exponentielle Regression)
  3. f(x) = axb (exponentielle Regression)
Aufruf
calculate_Regression($x_values, $y_values, $user_formula=null, $number_format="en", $precision=2)
Parameter
$x_values und $y_values sind Arrays von numerischen Werten
$user_formula - Sie können eine eigene Regressionsformel angeben, die dann verwendet wird
$number_format - definiert das Zahlenformat der berechneten Ausgabeformel
$precision - definiert die Dezimalstellen (die Genauigkeit) der berechneten Ausgabeformel
Rückgabewert
ein Array, das Arrays von x / y-Paaren und eine berechnete Regressionsformel enthält
Beispiel
$result = calculate_Regression($x_values, $y_values);
$data = $result['values'];
$formula = $result['formula'];

getDataviaFormula

Beschreibung
Die Funktion generiert Daten basierend auf einer bereitgestellten mathematischen Formel
Aufruf
getDataviaFormula($formula, $x_interval=1, $x_min=0, $x_max=5, $max_iterations = 500)
Parameter
$formula -Die Notation Ihrer Formel wird von der Skriptsprache "PHP" abgeleitet. Bitte Lesen Sie die folgenden Informationen dazu:
  1. Sie können eine Formel mit oder ohne Gleichheitszeichen angeben. z. B. "y = x * e ^ x" oder "x * e ^ x"
  2. Die unabhängige Variable muss auf "x" gesetzt werden
  3. Die Erstellung von Daten wird durch vier Parameter gesteuert:
    1. "$x_min" - x-Wert für den Start der Berechnung
    2. "$x_max" - x-Wert für das Ende der Berechnung
    3. "$x_interval" - x-Inkrement zur Berechnung
    4. "$max_iterations" - Maximum der Berechnungsschritte
    5. Die Berechnung stoppt, wenn entweder x_max oder $max_iterations erreicht sind.

  4. Konstanten:
    • Pi (π): "pi"
    • Eulersche Zahl (e): "e"
  5. Operatoren:
    • Addiere: "+"
    • Subtrahiere: "-"
    • Multipliziere: "*"
    • Dividiere: "/"
    • Potenziere: "^"
  6. Funktionen
    • sin
    • sinh
    • arcsin
    • asin
    • arcsinh
    • asinh
    • cos
    • cosh
    • arccos
    • acos
    • arccosh
    • acosh
    • tan
    • tanh
    • arctan
    • atan
    • arctanh
    • atanh
    • sqrt
    • abs
    • ln
    • log10
    • log
Rüchgabe wert
ein assoziatives Array mit den Schlüsseln "x_values", "y_values" oder im Fehlerfall "error". Dann hat "error" Fehler-Infos gespeichert und x_values und y_values sind leer (nicht gesetzt).
Beispiel
$data = getDataviaFormula("y=2*e^-(0.2 * x)*sin(x * 2*pi)", 0.1, 0, 20);
$x_values = $data['x_values'];
$y_values = $data['y_values'];
$error = $data['error'];

 

Download php-RGraph Package

php-RGraph ist freie Software - Sie müssen jedoch die GPL-Lizenzbedingungen einhalten, um sie verwenden zu können. Weitere Informationen zu GPL und freier Software finden Sie unter GNU Org .

Um php-RGraph herunterzuladen, klicken Sie bitte auf den Download-Button:

Version 2.1.20 (Build Level 2.1.20.1 - 30. Juni 2024)

 download php-RGraph Package

 

Danksagung

Ohne die hervorragende Arbeit der Entwickler von RGraph wäre meine Entwicklung von php-RGraph nicht möglich gewesen. Vielen Dank an das RGraph-Entwicklungsteam! - Sie haben ein herausragendes Stück Arbeit produziert.
Wir benutzen Cookies

Wir nutzen Cookies auf unserer Website. Einige von ihnen sind essenziell für den Betrieb der Seite, während andere uns helfen, diese Website und die Nutzererfahrung zu verbesssern. Auf keinen Fall werden persönliche oder vertrauliche Daten gespeichert oder weitergegeben.