3 Stimmen

Dynamisch aktualisierte Diagramme auf einer Webseite - howto?

Ich muss wissen, wie ich eine Webseite mit dynamisch aktualisierten Diagrammen gestalten kann. Es sollte etwas sein, das dem Aussehen von Börsendiagrammen ähnelt (z. B. Google Finanzen ), allerdings mit etwas komplizierteren Funktionen, aber das ist nicht der Punkt. Natürlich denke ich an ein Flash-Steuerelement im Ajax-Stil zu schreiben, die mit dem Server durch, okay, so etwas wie XMLHttpRequest kommunizieren würde, aber aus dem Flash-Code, und zeichnen Sie Dinge auf der Grundlage von Daten empfangen. Ist dies mit Flash machbar? Erlaubt das Sicherheitsmodell eine solche Art von Client-Server-Interaktion? Wenn ja, können Sie mir irgendwelche Referenzen für den Einstieg nennen (ähnliche OpenSource-Projekte, Artikel, was auch immer)? Oder sollte ich Flash vergessen und gleich ein Java-Applet verwenden?

Eine wichtige Sache zu beachten: Ich glaube nicht, dass ich Google Charting API verwenden kann, weil ich auch Benutzer-Interaktion haben muss. Im obigen Link zu Google Finance kann der Benutzer das Diagramm mit der Maus hin- und herziehen, das kommt dem nahe, was ich brauche (ich muss auch einige Aktionen aus dem Dropdown-Menü implementieren).

Vielen Dank für Ihre Antworten und Meinungen!

4voto

user40552 Punkte 151

Versuchen Sie dies: JQuery Flot

Flot ist ein JQuery-Plugin zum Erstellen von Diagrammen. Sie plotten immer wieder an Ort und Stelle mit den neuesten Daten in der gewünschten Häufigkeit, um eine dynamisch aktualisierte Grafik zu erstellen. Es basiert auf dem <canvas>-Tag. Wir verwenden es erfolgreich, um ziemlich komplexe, dynamisch aktualisierte Diagramme in unseren Anwendungen zu erstellen. Die Aktualisierungen werden über periodische AJAX-Aufrufe abgerufen.

Eine weitere Alternative ist YUI-Diagramme

Wir haben uns damit nicht näher befasst, aber es verwendet Flash und AJAX, wie Sie es wollten.

/RS

2voto

Greg Hewgill Punkte 882617

Ich habe die Google Charts API um diese Art von Dingen zu tun. Ein einfaches Beispiel finden Sie in meinem Sonnenaufgang und Sonnenuntergang Seite. Diese Seite berechnet die Sonnenaufgangs- und Sonnenuntergangszeiten für einen bestimmten Breiten- und Längengrad, alles in Javascript, und verwendet dann die Google Chart API, um die Grafik auf der Seite durch die angeforderten Daten zu ersetzen.

Update : Das Stack Overflow Reputationsdiagramm (siehe Ihre Benutzerseite) ist nicht Flash und erlaubt dennoch interaktives Ziehen. (Klicken und ziehen Sie auf der linken Seite, um die Beiträge auf der rechten Seite zu aktualisieren, die die hervorgehobene Reputationsregion widerspiegeln). Vielleicht könnten Sie sich ansehen, wie das implementiert ist.

1voto

Simon Punkte 74705

Sie haben beschrieben Flex ...

1voto

jcoder Punkte 28716

Dies ist in Flash sehr gut möglich. Sie können die URLLoader-Klasse verwenden, um zur Laufzeit Daten von einem Server zu erhalten und Ihr Diagramm mit einem benutzerdefinierten Steuerelement zu zeichnen. In Actionscript3 würden Sie die Shape-Klasse unterklassifizieren und einen kleinen Zeichencode schreiben, um Ihre Diagramme zu zeichnen. Flash unterstützt das Zeichnen und Füllen, so dass es wahrscheinlich sehr gut darin ist.

Der Flash-Client kann den Server nach Updates fragen. Wenn Sie eine "Live"-Verbindung wünschen, können Sie auch eine Socket-Verbindung zum Server herstellen und den Server aktualisierte Daten live übertragen lassen. Flash eignet sich hierfür gut, da Sie XML-Daten über den Socket übertragen und die eingebaute Unterstützung für die XML-Verarbeitung nutzen können, oder Sie können binäre Daten genauso einfach senden.

Was das Sicherheitsmodell betrifft, so ist es nur das Standard-Flash-Modell. Sie können ohne Probleme Netzwerkverbindungen zurück zu dem Server herstellen, von dem die SWF-Datei stammt. Wenn Sie eine Verbindung zu einem anderen Server herstellen wollen, muss dieser Server Ihrem Client die Erlaubnis erteilen, sich mit ihm zu verbinden, indem er eine crossdomain.xml-Datei bereitstellt

0voto

Jacksonh Punkte 377

Ich bin mir nicht sicher, was die Flash-Seite angeht, aber in Silverlight wäre das ziemlich einfach zu bewerkstelligen. Ich bin mir ziemlich sicher, dass Sie auch in Flash problemlos eine Serveranfrage stellen können.

Ich würde mich auf die Suche nach langen Umfragen machen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X