Migration von Google Image Charts

Google Image Charts war die statische Diagramm-API unter chart.googleapis.com/chart. Eine URL ging hinein, ein PNG kam zurück, und jede Einstellung steckte in Query-Parametern wie cht, chd und chs. Google hat sie 2012 abgekündigt und 2019 abgeschaltet. Image-Charts liest dieselben Parameter, die Migration ist also ein Austausch des Hosts.

Wie ersetzt man Google Image Charts?

Ändern Sie die Domain von chart.googleapis.com zu image-charts.com. Die Diagrammparameter behalten dieselben Namen und dieselbe Syntax, der Rest des Query-Strings wandert also unverändert mit. Für die meisten URLs ist Image-Charts damit ein direkter Ersatz, und die Tabelle unten markiert die Stellen, an denen das nicht gilt.

Google Image Charts, liefert 404

https://chart.googleapis.com/chart?cht=bvg&chd=t:60,40,75|30,55,45&chs=700x300&chtt=Requests+per+month

Image-Charts, rendert das Diagramm unten

https://image-charts.com/chart?cht=bvg&chd=t:60,40,75|30,55,45&chs=700x300&chtt=Requests+per+month

Gruppiertes Balkendiagramm mit dem Titel Requests per month, das Europa und Nordamerika über 2024, 2025 und 2026 vergleicht
Eine echte Image-Charts-URL, von dieser Seite als einfaches Bild-Tag eingebunden. Unsignierte Diagramme sind kostenlos, unterliegen einer Ratenbegrenzung und tragen das kleine Wasserzeichen, das Sie in der Ecke sehen. Kostenpflichtige Tarife entfernen es.

Warum Ihre alten Diagramm-URLs nicht mehr funktionieren

Google kündigte die Abkündigung von Image Charts im April 2012 an und sagte zu, den Dienst noch drei Jahre weiterzubetreiben. Die Abschaltung kam im März 2019.

Seitdem antwortet chart.googleapis.com/chart mit einem HTTP 404, egal was Sie ihm senden. Balkendiagramme, Kreisdiagramme und QR-Codes kommen alle als Google-Fehlerseite zurück statt als Bild.

Der Ausfall ist leise. Ein Bild-Tag in einer E-Mail, einem PDF-Bericht, einer Confluence-Seite oder einem Kunden-Dashboard löst keinen Fehler aus, wenn die Quelle stirbt. Es zeigt ein kaputtes Bild, und Sie erfahren davon meist von einem Kunden statt von einer Überwachung.

Parameter-Kompatibilität

Google hat 30 Parameter für Image Charts dokumentiert. 23 funktionieren bei Image-Charts unverändert, 1 wird akzeptiert und ignoriert, und 6 haben keine Entsprechung. Die Tabelle unten stammt aus der Image-Charts-API-Spezifikation, jeder Verhaltensunterschied ist darin ausgeschrieben.

Google-Image-Charts-Parameter und ihr Verhalten bei Image-Charts
ParameterWas es steuertBei Image-Charts
chtDiagrammtypDieselben Werte. Image-Charts ergänzt die Typen Blasen-, Polarflächen- und Ringdiagramm.
chdDatenreihenDieselben Kodierungen. Ergänzt chd=a:, ein Gleitkommaformat ohne Obergrenze von 0 bis 100 oder 0 bis 4095 und mit automatischer Skalierung.
chdsEigene oder automatische DatenskalierungDieselbe Syntax. Die Standard-y-Achse gibt Ihre echten Werte aus statt des Bereichs 0 bis 100, den Google beibehielt.
chsDiagrammgröße in PixelnDieselbe Syntax. Bis zu 998.001 Pixel insgesamt und 999 px pro Seite, gegenüber 300.000 Pixeln bei Google.
chlBalken-, Segment- und PunktbeschriftungenIdentisch.
chcoFarben der DatenreihenIdentisch.
chttDiagrammtitelIdentisch.
chtsTitelfarbe und SchriftgrößeIdentisch.
chxtWelche Achsen angezeigt werdenIdentisch.
chxlEigene AchsenbeschriftungenIdentisch.
chxrAchsenbereichDieselbe Syntax. Das Ändern des Achsenbereichs skaliert auch die Daten neu, was die meisten von Google erwartet hatten.
chxsSchriftart und Farbe der AchsenbeschriftungenUnterstützt. Wissenschaftliche Notation, Ausrichtung der Beschriftungen und Linienfarbe pro Achse sind nicht implementiert.
chxpPositionen der AchsenbeschriftungenIdentisch.
chdlLegendentextIdentisch.
chdlpPosition und Reihenfolge der LegendeIdentisch.
chdlsSchriftart und Farbe der LegendeIdentisch.
chfHintergrund- und DatenreihenfüllungenDieselbe Syntax. Farbverläufe funktionieren bei Balken-, Linien-, Kreis- und Blasendiagrammen, während Google sie nur bei Balkendiagrammen erlaubte.
chmMarker und zusammengesetzte DiagrammeUnterstützt. Das optionale z-order-Feld wird ignoriert.
chlsStrichstärke und StricheIdentisch.
chgGitternetzlinienIdentisch.
chmaDiagrammränderDieselbe Syntax, und negative Ränder sind erlaubt.
chofAusgabeformatIdentisch.
chldQR-Code-Fehlerkorrektur und -RandIdentisch.
chbhBalkenbreite und -abstandWird akzeptiert und ignoriert. Balkenbreiten werden für Sie berechnet.
chemMarker mit dynamischen IconsKeine Entsprechung.
chfdPer Formel erzeugte DatenKeine Entsprechung.
chpKreisdiagramm-Drehung und Nulllinie bei BalkenKeine Entsprechung.
chstTyp des dynamischen IconsKeine Entsprechung.
chtmKartenausschnittKeine Entsprechung.
chxtcLänge der Achsen-TeilstricheKeine Entsprechung.

Diagrammtypen

Balken-, Linien-, Kreis-, Netz-, GraphViz- und QR-Code-Diagramme lesen die cht Werte, die Sie bereits verwenden. Streudiagramme, Venn-Diagramme, Google-o-meter-Anzeigen, Kartendiagramme und dynamische Icons haben keine Entsprechung bei Image-Charts, diese URLs brauchen also eine andere Lösung.

Parameter, die Google nie hatte

Einige Parameter gibt es nur bei Image-Charts: chan rendert ein animiertes GIF, chbr rundet die Balkenecken ab, chli setzt eine Beschriftung in ein Ringdiagramm, icff und icfs wählen eine Google-Schriftart und ihren Stil, iclocale formatiert Zahlen und Datumsangaben für eine Sprache, und icretina verdoppelt die Pixeldichte. Die Referenzdokumentation behandelt jeden davon.

Die Migration durchführen

  1. Finden Sie die toten URLs. Durchsuchen Sie Ihren Code, Ihre Templates und Ihre E-Mail-Layouts nach chart.googleapis.com.
  2. Ersetzen Sie den Host durch image-charts.com und lassen Sie den Query-String unverändert.
  3. Laden Sie eine der umgeschriebenen URLs im Browser. Eine 400-Antwort nennt den Parameter, den die API abgelehnt hat, und die Tabelle oben sagt, ob es einen Ersatz gibt.
  4. Prüfen Sie die 6 Parameter ohne Entsprechung und die Diagrammtypen, die nie portiert wurden. Nur diese URLs müssen überarbeitet werden.

Wenn die Diagramme, die Sie neu aufbauen, von einem geplanten Job oder einem No-Code-Tool statt von Ihrem eigenen Code erzeugt werden, erreichen die Integrationen und das Agent-Tooling dieselbe API ohne Umbau.

Eine URL auf Image-Charts umstellen

Ein Diagramm erstellen