Was ist RGraph?
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 jetzt 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 525 von RGraph.
{tab php_RGraph Howto Guide|primary}
Wie setzt man php-RGraph ein
Diese Anleitung soll Ihnen helfen, die Struktur von php-RGraph zu verstehen und Ihnen einige Informationen
Ratschläge zur Verwendung von php-RGraph auf Ihrer Website geben.
Dieser Guide hat vier Abschnitte
- Struktur von php-RGraph charts
- Verwendung von Templates
- Einsatz von php-RGraph auf ihrer Website
- php-RGraph unter Joomla
Mit RGraph erstellen Sie Diagramme, indem Sie wie Javascript-Code schreiben wohingegen
mit php-RGraph sie 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 wird.
{tab-level2 Struktur}
Installation von php-RGraph
Die Installation ist unkompliziert. Sobald Sie die Installationsdatei "php-rgraph.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 beivon php-RGraph (benenne keine Ordner um).
Ü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 folgende URL "http://your-host/ihr-installations-verzeichnis/RGraph/doc/samples.html").
Auf der Beispielseite haben Sie die Möglichkeit, ein Beispiel anzuzeigen und den PHP-Code für das Erstellen des Beispiels anzusehen.
Dieser Code veranschaulicht die Struktur von php-RGraph. Ein PHP-Diagrammskript
hat immer diese Komponenten:
- Definition der Umgebungsvariablen
- Definition des Layout vom Diagramm
- Definition der Diagrammdaten
- Definition der RGraph Diagramm Eigenschaften
- Erstellung eines json-Objekts für RGraph
- Verwendung von templates für die Anzeige des Diagramms (html-Generierung)
Definition der Umgebungsvariablen
Jedes Diagrammskript muss wissen, wo sich Ressourcen für Diagramme befinden. Dies wird mit
derEinbettungs (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 Variable-Namen ist wichtig für den Einsatz vong Templates.
Definition des Layout vom Diagramm
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.
Definition der Diagrammdaten
Diagrammdaten können aus verschiedenen Quellen stammen:
- Definieren Sie ein Array numerischer Daten direkt in Ihrem Diagrammskriptt
- Daten aus Datei abrufen
- Daten von einem lokaln oder entfernten serveranfordern
- Daten aus der MySQL-Datenbank abrufen
- Daten aus csv-Datei abrufen
- >Daten aus Google 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.
Definition der RGraph Diagramm Eigenschaften
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
- 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.
Erstellung eines json-Objekts für 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();
Verwendung von templates für die Anzeige des Diagramms
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);
{tab-level2 Templates}
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:
- template header Datei
- 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").
{tab-level2 Website}
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>
jQuery.load lädt die URL "../samples/logo.php", ein Diagrammskript aus meinen Beispielen.
Dazu müssen Sie ein div-Element mit der ID "show-sample" hinzufügen, 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 angezeigt
das durch das Meter-Diagramm ersetzt wurden.
Wie habe ich das gemacht? Ich habe nur eine kleinen Codeteile 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.
{tab-level2 Joomla!}
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">
{jumi [php-apps/RGraph/samples_jumi/bar_simple.php]}
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 die Joomla -Erweiterung "jumi" installiert haben, können Sie Ihren php-RGraph-Skriptcode mithilfe von jumi in einen Artikel einfügen Plugin-Funktion, z.B:
{jumi [RGraph/samples_jumi/bar_simple.php]}
Hinweis: Wenn Sie ini-files für rgraph_options mit jumi verwenden, müssen Sie den Dateispeicherort von ini-files in Ihrer environment.php angeben, damit Sie in Ihrem Diagrammskript darauf verweisen können.
{/tabs}
{tab rgraph classes|primary}
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.
{tab-level2 rgraph_chart methods}
{jumi [php-apps/RGraph/doc_joomla/methods_rgraph.php]}
{tab-level2 rgraph_options methods}
{jumi [php-apps/RGraph/doc_joomla/methods_options.php]}
{/tabs}
{tab rgraph_options reference|primary}
{jumi [php-apps/RGraph/doc_joomla/options_reference-de.php]}
{tab php_RGraph Utilities|primary}
Zusätzliche Funktionen von dem php-RGraph Package
php-RGraph bietet zusätzlich zu rgraph_chart zwei weiterte php-Funktionen
Diese beiden können zum Generieren von Daten
Linien- oder Streudiagramme verwendet werden.
- getDataviaFormula
- calculate_Regression
{tab-level2 calculate_Regression}
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:
- f(x) = ax + b (lineare Regression)
- f(x) = abx (exponentielle Regression)
- 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'];
{tab-level2 getDataviaFormula}
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. Pls. Lesen Sie die folgenden Informationen dazu:
- Sie können eine Formel mit oder ohne Gleichheitszeichen angeben. z. B. "y = x * e ^ x" b> oder "x * e ^ x" b>
- Die unabhängige Variable muss auf "x" gesetzt werden
- Die Erstellung von Daten wird durch vier Parameter gesteuert:
- "$x_min" - x-Wert für den Start der Berechnung
- "$x_max" - x-Wert für das Ende der Berechnung
- "$x_interval" - x-Inkrement zur Berechnung
- "$max_iterations" - Maximum der Berechnungsschritte
- Die Berechnung stoppt, wenn entweder x_max oder $max_iterations erreicht sind.
- Konstanten:
- Pi (π): "pi"
- Eulersche Zahl (e): "e"
- Operatorens:
- Addiere: "+"
- Subtrahiere: "-"
- Multiplizier: "*"
- Dividiere: "/"
- Pntenziere: "^"
- 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 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'];
{/tabs}
{/tabs}
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 {tip id="132" position="-1"} GNU Org {/tip} .
Um php-RGraph herunterzuladen, klicken Sie bitte auf den Download-Button:
Version 2.1.0 (Build Level 2.1.0.1 - 17. September 2020)
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.