<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="https://wiki.twig.es/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://wiki.twig.es/index.php?action=history&amp;feed=atom&amp;title=AnimatedBarChart.java</id>
		<title>AnimatedBarChart.java - Revision history</title>
		<link rel="self" type="application/atom+xml" href="https://wiki.twig.es/index.php?action=history&amp;feed=atom&amp;title=AnimatedBarChart.java"/>
		<link rel="alternate" type="text/html" href="https://wiki.twig.es/index.php?title=AnimatedBarChart.java&amp;action=history"/>
		<updated>2026-05-06T17:32:28Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.23.0</generator>

	<entry>
		<id>https://wiki.twig.es/index.php?title=AnimatedBarChart.java&amp;diff=1435&amp;oldid=prev</id>
		<title>George2: Created page with &quot;&lt;source lang=&quot;java&quot;&gt;  import javafx.animation.Animation; import javafx.animation.KeyFrame; import javafx.animation.Timeline; import javafx.application.Application; import java...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.twig.es/index.php?title=AnimatedBarChart.java&amp;diff=1435&amp;oldid=prev"/>
				<updated>2014-11-15T23:21:46Z</updated>
		
		<summary type="html">&lt;p&gt;Created page with &amp;quot;&amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;  import javafx.animation.Animation; import javafx.animation.KeyFrame; import javafx.animation.Timeline; import javafx.application.Application; import java...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
import javafx.animation.Animation;&lt;br /&gt;
import javafx.animation.KeyFrame;&lt;br /&gt;
import javafx.animation.Timeline;&lt;br /&gt;
import javafx.application.Application;&lt;br /&gt;
import javafx.event.ActionEvent;&lt;br /&gt;
import javafx.event.EventHandler;&lt;br /&gt;
import javafx.scene.Scene;&lt;br /&gt;
import javafx.scene.chart.BarChart;&lt;br /&gt;
import javafx.scene.chart.CategoryAxis;&lt;br /&gt;
import javafx.scene.chart.NumberAxis;&lt;br /&gt;
import javafx.scene.chart.XYChart;&lt;br /&gt;
import javafx.stage.Stage;&lt;br /&gt;
import javafx.util.Duration;&lt;br /&gt;
&lt;br /&gt;
public class AnimatedBarChart extends Application {&lt;br /&gt;
    &lt;br /&gt;
    final static String itemA = &amp;quot;A&amp;quot;;&lt;br /&gt;
    final static String itemB = &amp;quot;B&amp;quot;;&lt;br /&gt;
    final static String itemC = &amp;quot;F&amp;quot;;&lt;br /&gt;
    @Override&lt;br /&gt;
    public void start(Stage stage) {&lt;br /&gt;
        final NumberAxis xAxis = new NumberAxis();&lt;br /&gt;
        final CategoryAxis yAxis = new CategoryAxis();&lt;br /&gt;
        final BarChart&amp;lt;Number, String&amp;gt; bc = new BarChart&amp;lt;Number, String&amp;gt;(xAxis, yAxis);&lt;br /&gt;
        bc.setTitle(&amp;quot;Summary&amp;quot;);&lt;br /&gt;
        xAxis.setLabel(&amp;quot;Value&amp;quot;);&lt;br /&gt;
        xAxis.setTickLabelRotation(90);&lt;br /&gt;
        yAxis.setLabel(&amp;quot;Item&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
        XYChart.Series series1 = new XYChart.Series();&lt;br /&gt;
        series1.setName(&amp;quot;2003&amp;quot;);&lt;br /&gt;
        series1.getData().add(new XYChart.Data(2, itemA));&lt;br /&gt;
        series1.getData().add(new XYChart.Data(20, itemB));&lt;br /&gt;
        series1.getData().add(new XYChart.Data(10, itemC));&lt;br /&gt;
&lt;br /&gt;
        XYChart.Series series2 = new XYChart.Series();&lt;br /&gt;
        series2.setName(&amp;quot;2004&amp;quot;);&lt;br /&gt;
        series2.getData().add(new XYChart.Data(50, itemA));&lt;br /&gt;
        series2.getData().add(new XYChart.Data(41, itemB));&lt;br /&gt;
        series2.getData().add(new XYChart.Data(45, itemC));&lt;br /&gt;
&lt;br /&gt;
        XYChart.Series series3 = new XYChart.Series();&lt;br /&gt;
        series3.setName(&amp;quot;2005&amp;quot;);&lt;br /&gt;
        series3.getData().add(new XYChart.Data(45, itemA));&lt;br /&gt;
        series3.getData().add(new XYChart.Data(44, itemB));&lt;br /&gt;
        series3.getData().add(new XYChart.Data(18, itemC));&lt;br /&gt;
&lt;br /&gt;
        Timeline tl = new Timeline();&lt;br /&gt;
        tl.getKeyFrames().add(new KeyFrame(Duration.millis(500), &lt;br /&gt;
            new EventHandler&amp;lt;ActionEvent&amp;gt;() {&lt;br /&gt;
                @Override public void handle(ActionEvent actionEvent) {&lt;br /&gt;
                for (XYChart.Series&amp;lt;Number, String&amp;gt; series : bc.getData()) {&lt;br /&gt;
                    for (XYChart.Data&amp;lt;Number, String&amp;gt; data : series.getData()) {&lt;br /&gt;
                        data.setXValue(Math.random() * 100);&lt;br /&gt;
                    }&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
        }));&lt;br /&gt;
        tl.setCycleCount(Animation.INDEFINITE);&lt;br /&gt;
        tl.play();&lt;br /&gt;
&lt;br /&gt;
        Scene scene = new Scene(bc, 800, 600);&lt;br /&gt;
        bc.getData().addAll(series1, series2, series3);&lt;br /&gt;
        stage.setScene(scene);&lt;br /&gt;
        stage.show();&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    public static void main(String[] args) {&lt;br /&gt;
        launch(args);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>George2</name></author>	</entry>

	</feed>