Balkendiagramm soll Zuwachs animiert anzeigen

dossants shared this question 5 months ago
Answered

Hallo,


ich sitze mal wieder an einem Geogebra-Problem, bei dem mir wahrscheinlich wieder nur die entscheidende Idee fehlt. Und zwar möchte ich gerne ein Balkendiagramm erstellen, das interaktiv mit einem Button und einem Regler verbunden ist. Das Diagramm soll Folgendes machen:


  • Bei jedem Klick auf den Button wird ein neuer Wert berechnet (hier zur Vereinfachung eine Zufallszahl)
  • Dieser Wert wird als neuer Maximalwert für den Regler eingesetzt, der die Animation steuert. Die Animation läuft also jetzt von 0 bis zu dieser Zufallszahl.
  • Bei jedem Klick soll außerdem ein neuer Balken (bzw. hier richtiger "Säule") rechts ans Balkendiagramm angefügt werden. Dieser Balken soll beim Klick erstmal die Höhe des vorherigen Balkens haben, dann startet die Animation, und der neue Balken soll analog zum Fortschreiten des Reglers weiter nach oben wachsen. Am Ende der Animation hat man also einen neuen Balken, der um den Wert der Zufallszahl höher ist als der vorherige Balken.


Die Balken werden also von links nach rechts immer höher und der jeweilige Zuwachs soll mit Hilfe einer Animation gezeigt werden.


Mein Problem: Wie lese ich die jeweils vorherige Balkenhöhe aus und addiere im Laufe der Animation dann NUR den Wert des Reglers? Mein Entwurf addiert leider permanent auch den Wert des voherigen Balkens, so dass der Zuwachs in die Höhe schießt.


Ich hoffe, ich konnte mein Problem einigermaßen verständlich beschreiben. Im Anhang meine Beispieldatei mit dem bisherigen Entwurf.


Danke im Voraus!

Comments (3)

photo
1

Ich verstehe Deine Beschreibung wie im Anhang realisiert.

Offen ist noch, ob mit dem Initialisieren bereits eine Zufallszahl > 0 gezeigt werden soll und falls ja mit oder ohne Animation. Falls das Klicken vor dem Ende der Animation nicht erwünscht ist, so kann der Button ausgeblendet werden (Anzeige-Bedingung für Klick wäre dann: Regler >= vor+Zuf). Aber auch ohne diese Massnahme läuft der nächste Zyklus korrekt weiter.

Die Animation des Reglers (resp. dessen Animation) ist so realisiert, dass er genau so gut weggelassen werden könnte ohne das Resultat zu verfälschen. Für den aktuellen Zuklus (Balken) wird nur "vor" und "Zuf" verwendet, die den Minimal- und Maximal-Wert des Reglers steuern. Zu Beginn des Neuen Zykluses wird BalkenY (nochmals) definitiv nachgeführt und erst anschliessend wird "vor" und "Zuf" für den neuen Zyklus vorbereitet. Es ist wichtig, dass alle Werte-Objekte, die durch die Scripts verändert werden, sog. freie Objekte sind (ansonsten werden die Script-Befehle ohne Fehlermeldung nicht ausgeführt)

Die Scripts (Klick, Zurücksetzen, Regler) enthalten ergänzende Kommentare.

photo
1

Einige ungefragte Erweiterungen.

photo
1

Oh super, rami, danke!


Dein erster Vorschlag ist schon genau das, was ich mir vorgestellt hatte. Den Anfangswert des Reglers ebenfalls als Variable zu setzen - auf die Idee bin ich gar nicht gekommen. Und du hast auch noch einige andere Befehle vereinfacht, da hab ich jetzt einiges dazugelernt.


Inzwischen hab ich es auch geschafft, das Ganze in mein etwas komplexeres Projekt zu übertragen, funktioniert wunderbar. Beim Ausblenden des Buttons während der Animation hattest du mir ja schon in einem anderen Thread geholfen, das hab ich ebenfalls eingebaut.


Und dein zweiter Vorschlag ist ja noch viel besser! Das muss ich mir noch etwas im Detail anschauen, aber diese gestapelten Säulen gefallen mir auf den ersten Blick sehr gut.


Vielen, vielen Dank!!!

© 2019 International GeoGebra Institute