Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Explanation coming....JXGraph allows you to plot functions on a graph. JXGraph in Java takes a Plot (usually an anonymous function) to plot a function. Because anonymous classes are not possible in Groovy, a new class, GroovyPlot, has been created that can take a closure and generate a Plot.

The graph node in SwingXBuilder adds a property plots that takes a multi-dimensional List as a parameter. The internal list has a Color component and a closure representing the plot. Here is an example of code plotting sin x : 

Code Block
def swing = new SwingXBuilder()
def frame = swing.frame(size:[300,300]) {
		graph(plots:[[Color.GREEN,{value -> Math.sin(value)}]])
	}.show()

And here is the corresponding graph: 

To graph, for instance, the cosine as well as the sine, the graph node signature would be:

Code Block

graph(plots:[ [Color.GREEN, {value -> Math.sin(value)}], [Color.BLUE, { value -> Math.cos(value)}] ])