Print

Print


ECJ Group:

  I am glad to use the new release ECJ13.  It has a lot more to offer than I had
expected.  I have started to work on additional charting functionality for the
GUI.  I would like to add a bar graph that displays the genome of best current
individual in each sub population.  I have some questions in regard to this.

  In order to accomplish this I created two classes in ec.display.chart:
ChartableStatisticsBar and SimpleChartableStatisticsBar.  These two classes are
nearly identical to the two pre-existing classes without the “bar” suffix,
except my classes create a bar chart.  In addition, I had to edit the
StatisticsChartPane method in the ec.display.StatisticsChartPane class.  I added
an if statement to the method which checks if the local variable “statistics” is
an instance of ChartableStatisticsBar.  If it is, it creates a barchart as
opposed to the usual XYLineChart.

  My programming experience is minimal, I know my approach is poor and I would
also like to retain the fitness XYChart (perhaps in another tab).  What would be
the best way to do this?  Would it be a good idea to ‘decorate’ the
StatisticsChartPane with various chart panels?  I really think that
StatisticsChartPane and ChartableStatistics should be open for extention by
closed for modification.
  It would be nice if the user could simply declare what charts he wants in the
.params file.  Perhaps something like this:

    stat.num-children = 2

    stat.child.0 = ec.display.chart.SimpleChartableStatisticsFitness
    stat.child.0.title = Best Fitness of Generation
    stat.child.0.x-axis-label = generation
    stat.child.0.y-axis-label = Fitness value

    stat.child.1 = ec.display.chart.SimpleChartableStatisticsBarGenome
    stat.child.1.title = Current Best Individuals of SubPops
    stat.child.1.x-axis-label = gene
    stat.child.1.y-axis-label = value

I have attached the files I used in a .zip.  I think ECJ is great and I would
like more graphical display capabilities.  Thanks for the work done on releasing
ECJ13, I hope to see new documentation.

Thanks again,

Robert Hovden
Georgia Institute of Technology
[log in to unmask]
[log in to unmask]


--