Hallo,
weiß jemand zufällig wie ich ein m²
in PHPlot angezeigt bekomme.
$plot->SetYTitle("Liter/qm", 'both'); geht
$plot->SetYTitle("Liter/m²", 'both'); geht nicht
Hallo,
weiß jemand zufällig wie ich ein m²
in PHPlot angezeigt bekomme.
$plot->SetYTitle("Liter/qm", 'both'); geht
$plot->SetYTitle("Liter/m²", 'both'); geht nicht
Sonderzeichen mit PHP? Schau mal ob du hier fündig wirst!
Hi,
funktioniert es vielleicht wie bei HTML mit ² ?
Grüße
m^2 ??
Ich denke es hängt vielleicht mit dem Zeichensatz zusammen.
Das habe ich auf die Schnelle gefunden:
$plot->SetUseTTF(true)
Das habe ich auf die Schnelle gefunden:
$plot->SetUseTTF(true)
geht auch nicht.
Ich habe auch schon viel mit den Schrifteinstellungen experimentiert.
Bisher ohne Erfolg.
Evt. gibt's hier einen der es genau weiß.
geht auch nicht.
Ich habe auch schon viel mit den Schrifteinstellungen experimentiert.
Bisher ohne Erfolg.
Evt. gibt's hier einen der es genau weiß.
Naja zugegeben ich bin kein Experte aber ein paar mehr Infos allgemein über das Skript/Projekt wären toll
Zeichensätze an sich können immer ein gemeines Thema sein.
Manchmal ist es auch einfach der UTF8-Metadateneintrag im Header der HTML-Datei
<meta charset="UTF-8">
Falls (warum auch immer) der Eintrag aus einer Datenbank kommt so sollte auch diese eingestellt sein. UTF-8 ist der Zeichensatz mit welchem normalerweise solche Probleme nicht mehr aufkommen sollten.
Als erstes sollte immer die Dokumentation des Programms welches man benutzt eingesehen werden. http://phplot.sourceforge.net/phplotdocs/conc-text.html
Unter Punkt 3.8.5 wirst Du fündig. Evtl sollte vorher vielleicht komplett mal 3.8 durchgelesen werden, damit 3.8.5 klar wird.
Ich lese mal kurz ...
Ah ja die Lösung ² ;
Zitat von Die Dokumentation von phplotGD does not support using named character entities such as € directly in strings - they must be numerically encoded as described above.
EDIT: Das ist lustig und logisch, dass das Forum wieder ² anzeigt. Ist ebend PHP.
So siehts aus, wenn man den Interpreter nicht ran lässt :
[code=php]$plot->SetYTitle("Liter/m² ;", 'both');[/php]
Achtung Code nicht kopieren, da ist ein falsches Leerzeichen hinter der 178 und vor dem ; Der Interpreter macht sonst wieder ein ² draus!
Übrigens: "Sonderzeichen mit PHP" ist falsch da dem Client nicht PHP angezeigt wird.
PHP wird nur Serverseitig ausgeführt, der Client sieht davon aber nichts. Mögliche Ausgaben sieht der Client nur in Form von HTML oder eben Bildern... Deshalb ist raspiprojekts Aussage diesbezüglich leider auch falsch: Nicht PHP des Forums wandelt das um.
Wenn du also zum Beispiel nach "HTML Sonderzeichen" googlest findest du alle möglichen Zeichenkodierungen die du zur Anzeige für den Client verwenden kannst. Siehe dazu auch https://de.wikipedia.org/wiki/Hilfe:Sonderzeichenreferenz
In diesem Falle ist "Sonderzeichen mit PHP" nicht falsch, da mit PHPlot über die GD-Bibliothek eine Grafik des ganzen Diagramms inklusive der Überschrift und der Achsenbezeichnungen generiert wird. Also komplett PHP nix HTML, ausser vielleicht die Einbindung der fertigen Grafik auf der Seite.
meigrafd: Ich will nicht streiten, aber das Forum arbeitet mit PHP, unsere Einträge werden mit PHP bearbeitet, dabei wird ein Quelltext erzeugt, der dann im Browser auf dem Client geparst wird. Die Umwandlung der Sonderzeichen erfolgt also zwangsläufig schon mit PHP, da der Quelltext dynamisch erzeugt wird.
Es ist dennoch falsch.
Eigentlich müsste es "Sonderzeichen mit GD" lauten - das geht sogar aus dem von Dir genannten Link hervor: http://www.phplot.com/phplotdocs/con…nc-text-special
Und wegen Streit: http://php.net/manual/de/function.htmlentities.php
Es wird in HTML Code umgewandelt - die Darstellung erfolgt in HTML. PHP als solches kann nicht dargestellt werden.
Jetzt wirds wieder pinnenschietrig. GD ist doch wohl eine PHP-Bibliothek. Was soll dass jetzt!?
Ah ja die Lösung ² ;
Hatte ich schon versucht!
es kommt das dabei heraus.
Ohne Leerzeichen zwischen ² und ;
Ohne Leerzeichen zwischen ² und ;
Dann wird halt die Nummer ohne Leerzeichen angezeigt.
Aber kein hoch zwei!
Dann wird halt die Nummer ohne Leerzeichen angezeigt.
Aber kein hoch zwei!
Bitte poste mal deinen vollständigen PHP Code - bitte über codepad.org gemäß => dieser Beschreibung <=
[code=php]# 24 Std Regendiagramm
$BeW_Werte_Arryar = explode(";", $BeW_Werte); #Wertestring splitten
for ($X = 1; $X <= 24; $X++){
$RegenStd = $aktStunde - $X; //die Stunde des Regenwerts berechen
if ($RegenStd < 0){ //bei einem negativen Wert
$RegenStd = $RegenStd + 24; //positiv machen
}
$PlotRegen24[] = array($RegenStd, $BeW_Werte_Arryar[$X] / 20);
}
$PlotRegen24[] = array("begonnene Stunde", $BeW_Werte_Arryar[56] / 20);
$plot = new PHPlot(1000, 350); //Graf in PHPlot zeichnen
$plot->SetTitle('Regenverlauf der letzten 24 Stunden');
$plot->SetDataType('text-data');
$plot->SetPlotType('bars');
$plot->SetDataValues($PlotRegen24);
$plot->SetPrintImage(False); // keine autom. ausgabe
$plot->SetDataColors(array('blue'));
$plot->SetXTickLabelPos('none');
$plot->SetXTickPos('none');
$plot->SetYTickIncrement(1);
$plot->SetXLabelAngle(90);
$plot->SetPointShapes('dot');
$plot->SetPointSizes(8);
$plot->SetLineWidths(2);
$plot->SetYTickLabelPos('both');
$plot->SetPlotAreaWorld(0, NULL, NULL, NULL);
$plot->SetYTitle("Liter/m²", 'both');
$plot->DrawGraph();
$imageRegen24 = $plot->EncodeImage();[/php]
Versuch es mal bitte mit
dezimal
oder
hexadezimal
..natürlich ohne enthaltene Leerzeichen..
ich kann grad nicht nachvollziehen woher raspiprojekt die 0 für ² ; her hatte
Oder du verwendest das folgende wie es auch in der PHPlot Dokumentation steht:
[code=php]
$chars = html_entity_decode('²', ENT_NOQUOTES, 'UTF-8');
$plot->SetYTitle("Liter/m".$chars, 'both');
[/php]
ZitatGD does not support using named character entities such as € directly in strings - they must be numerically encoded as described above.
jetzt gehts!
es hat nur noch eine Zeile gefehlt.
[code=php]$plot->SetUseTTF(True);
$plot->SetYTitle("Liter/m²", 'both');[/php]
Danke für die Hilfe!
Ahja, klar, TrueType fonts (ttf) verwenden
Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!