DataChartUtility

From setiquest wiki

Jump to: navigation, search

Contents

Project Overview

This project is to develop a simple utility that will take an XML feed and create nice graphs that we can display on http://setiQuest.info. With this project we are going to start out simple, then grow the utility to create other types as we see fit.

This utility will be a program that can be run on the command line.

The resulting program will be called "seticharts"

Gantt Chart

The programming language will be JAVA.

The first phase of this project will be to create a program that:

  1. Create a JAVA program called "seticharts". The primary class will be called "SETICharts".
  2. This program will read the XML file of the schedule and create a Gantt chart as a PNG image file. This will show the schedule coverage for as many days as we have scheduled.
  3. The result will be sort-of like http://geek.starbean.net/wp-content/uploads/2009/12/gantt.PNG, with the hours at the top (00:00 through 24:00) and the "y" axis will be each day "March 01".
  4. It would be best if this was a program that could be called on the command line: "java seticharts -type <chart type> -width <pixel width> -input <input filename> -output <output filename>"
  5. The <chart type> argument will be "schedule", the pixel width is specified (example: 500), but not the height in pixels because that varies depending on the number of days in the schedule. The <input filename> specifies the XML schedule file. The <ouput filename> will be the PNG output image file.

JFreeChart will be used to create the chart. See http://www.java2s.com/Code/Java/Chart/JFreeChartGanttDemo1.htm has code that makes a gantt chart using jfreechart.

To read the XML file, maybe it would be best to use JDOM. See http://www.javaworld.com/javaworld/jw-05-2000/jw-0518-jdom.html. But, I have never used it, I do not know if this is best.


Participant

Status

Jrseti 04:01, 21 February 2012 (PST) Gagan has expressed interest in taking on this project.

Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox