Galera, baixei o JFreeChart , para fazer um grafico de linhas, mas não estou conseguindo fazer o que eu quero, será que alguem pode me ajudar?
O que eu quero fazer é um grafico, com valores entre 0 e 100 no Y, e a hora no X, peguei um exemplo, que vem junto com o JFreeChart , mas neste exemplo, ele mostra o Mês no X, como faço para mudar isso para HH:MM:SS?
Abaixo está o meu código:
import java.text.SimpleDateFormat;
import org.jfree.chart.ChartFactory;
import org.jfree.chart.*;
import org.jfree.chart.axis.DateAxis;
import org.jfree.chart.plot.XYPlot;
import org.jfree.chart.renderer.StandardXYItemRenderer;
import org.jfree.chart.renderer.XYItemRenderer;
import org.jfree.data.XYDataset;
import org.jfree.data.time.Second;
import org.jfree.data.time.TimeSeries;
import org.jfree.data.time.TimeSeriesCollection;
import org.jfree.ui.ApplicationFrame;
import org.jfree.ui.RefineryUtilities;
import org.jfree.ui.Spacer;
import org.jfree.util.Log;
import org.jfree.util.PrintStreamLogTarget;
import javax.swing.;
import java.awt.;
class PanelTuning extends JPanel
{
final TimeSeries s1 = new TimeSeries(“Shared Pool”, Second.class);
public PanelTuning (Connect conn)
{
}
public void Atualizar(){
final XYDataset dataset = createDataset();
final JFreeChart chart = createChart(dataset);
final ChartPanel chartPanel = new ChartPanel(chart);
chartPanel.setPreferredSize(new java.awt.Dimension(500, 270));
chartPanel.setMouseZoomable(true, false);
this.removeAll();
this.add(chartPanel,BorderLayout.CENTER);
chartPanel.setVisible(true);
}
private XYDataset createDataset() {
s1.add(new Second(), 87);
final TimeSeriesCollection dataset = new TimeSeriesCollection();
dataset.addSeries(s1);
dataset.setDomainIsPointsInTime(true);
return dataset;
}
private JFreeChart createChart(final XYDataset dataset) {
final JFreeChart chart = ChartFactory.createTimeSeriesChart(
"Memory Use",
"Hora", "Uso",
dataset,
true,
true,
false
);
chart.setBackgroundPaint(Color.white);
final StandardLegend sl = (StandardLegend) chart.getLegend();
sl.setDisplaySeriesShapes(true);
final XYPlot plot = chart.getXYPlot();
plot.setBackgroundPaint(Color.lightGray);
plot.setDomainGridlinePaint(Color.white);
plot.setRangeGridlinePaint(Color.white);
plot.setAxisOffset(new Spacer(Spacer.ABSOLUTE, 5.0, 5.0, 5.0, 5.0));
plot.setDomainCrosshairVisible(true);
plot.setRangeCrosshairVisible(true);
final XYItemRenderer renderer = plot.getRenderer();
if (renderer instanceof StandardXYItemRenderer) {
final StandardXYItemRenderer rr = (StandardXYItemRenderer) renderer;
rr.setPlotShapes(true);
rr.setShapesFilled(true);
rr.setItemLabelsVisible(true);
}
final DateAxis axis = (DateAxis) plot.getDomainAxis();
axis.setDateFormatOverride(new SimpleDateFormat("MMM-yyyy"));
return chart;
}
}