package org.greenstone.mat; import java.awt.Color; import java.awt.Font; import java.util.ArrayList; import javax.swing.JPanel; import org.jfree.chart.ChartPanel; import org.jfree.chart.JFreeChart; import org.jfree.chart.axis.NumberAxis; import org.jfree.chart.axis.NumberTickUnit; import org.jfree.chart.axis.SymbolAxis; import org.jfree.chart.plot.XYPlot; import org.jfree.chart.renderer.xy.XYLineAndShapeRenderer; import org.jfree.data.xy.XYDataset; import org.jfree.data.xy.XYSeries; import org.jfree.data.xy.XYSeriesCollection; import org.jfree.ui.ApplicationFrame; import org.jfree.ui.RefineryUtilities; public class DrawSymbolAxis extends ApplicationFrame { private static String[] metadataName; private static String[] documentIDs; private static ArrayList dataset; public DrawSymbolAxis(String string, String[] metadata, String[] ids, ArrayList set) { super(string); metadataName = metadata; documentIDs = ids; dataset = set; JPanel jpanel = createDemoPanel(); setContentPane(jpanel); pack(); RefineryUtilities.centerFrameOnScreen(this); setVisible(true); } private static JFreeChart createChart(XYDataset xydataset) { SymbolAxis symbolaxis = new SymbolAxis("Document ID", documentIDs); SymbolAxis symbolaxis_0_ = new SymbolAxis("Indexes", metadataName); XYLineAndShapeRenderer xylineandshaperenderer = new XYLineAndShapeRenderer(false, true); XYPlot xyplot = new XYPlot(xydataset,symbolaxis_0_,symbolaxis, xylineandshaperenderer); xyplot.setDomainGridlinePaint(Color.black); xyplot.setRangeGridlinePaint(Color.black); NumberAxis domainAxis = (NumberAxis)xyplot.getDomainAxis(); domainAxis.setAutoTickUnitSelection(true); double rangetick = 1; domainAxis.setTickUnit(new NumberTickUnit(rangetick)); xyplot.getRenderer().setSeriesPaint(0,Color.blue); xyplot.getRenderer().setSeriesShape(0, xyplot.DEFAULT_LEGEND_ITEM_BOX); JFreeChart jfreechart = new JFreeChart("",new Font("", Font.PLAIN, 12),xyplot,false); return jfreechart; } private static XYDataset createDataset() { XYSeries xyseries = new XYSeries("Series"); for(int a= 0; a