JavaFX real-time LineChart with time axis

23,268

Download Ensemble sample from http://www.oracle.com/technetwork/java/javafx/samples/index.html

There are several examples in it for dynamic charts, e.g. "Advanced Stock Line Chart". You can take a look at their source code directly in the application.

enter image description here

To show time on axis you can use string and DateFormatter:

    BarChart<String, Number> chart = new BarChart<>(new CategoryAxis(), new NumberAxis());

    final XYChart.Series<String, Number> series1 = new XYChart.Series<>();
    chart.getData().addAll(series1);

    SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm:ss");
    Date date = new Date();
    for (int i = 0; i <= 10; i += 1) {
        date.setTime(date.getTime() + i * 11111);
        series1.getData().add(new XYChart.Data(dateFormat.format(date), Math.random() * 500));
    }
Share:
23,268
Shantanu Banerjee
Author by

Shantanu Banerjee

*** Main Functions *** C and C++ int main(void); int main(); int main(int argc, char **argv); int main(int argc, char *argv[]); int main(int argc, char **argv, char **envp); JAVA public static void main(String[] args) public static void main(String... args) public static void main(String args[]) PYTHON def main(): # the main code goes here if __name__ == "__main__": main() PIKE int main(int argc, array(string) argv) SCALA def main(args:Array[String]) RUBY self # =&gt; main self.class # =&gt; Object self.class.ancestors # =&gt; [Object, Kernel]

Updated on July 05, 2022

Comments

  • Shantanu Banerjee
    Shantanu Banerjee almost 2 years

    I'm trying to plot real-time graph, with time axis, but I have found the LineChart constructor only has the signature.

    LineChart(Axis<X> xAxis, Axis<Y> yAxis)  
    

    I think embedding jfree chart in javafx is not a proper solution.

    I want a few of the jfree features in a javafx LineChart, is this possible?