Salve ragazzi,
ho la difficoltà nel generare un grafico con la libreria jfreechart.

Il problema è questo, sull'asse delle y vengono visualizzati dei valori in €
mentre sull'asse delle x le date nel format gg-mm

Purtroppo la stringa di 5 caratteri, risulta essere troppo grande e si vedono solo 3 puntini.

codice:
import java.awt.BasicStroke;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Font;
import java.text.DecimalFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.LinkedHashMap;
import java.util.Set;
import java.util.Vector;

import javax.swing.BorderFactory;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JSlider;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;

import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.axis.DateAxis;
import org.jfree.chart.axis.NumberAxis;
import org.jfree.chart.plot.CategoryPlot;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.chart.renderer.category.LineAndShapeRenderer;
import org.jfree.data.category.CategoryDataset;
import org.jfree.data.category.DefaultCategoryDataset;
import org.jfree.data.time.DateRange;
import org.jfree.ui.ApplicationFrame;
import org.jfree.ui.RefineryUtilities;

import supporto.HashMapClienti;
import supporto.HashMapConti;

import com.mcsolution.beans.Conti;
import com.mcsolution.beans.OperazioneCliente;
import com.mcsolution.beans.OperazioneFornitore;

/**
 * A simple demonstration application showing how to create a line chart using data from a
 * {@link CategoryDataset}.
 */
public class LineChartDemo1 extends JFrame {

    /**
     * Creates a new demo.
     *
     * @param title  the frame title.
     * @throws ParseException 
     */
	private JSlider slider;
	public DecimalFormat integerFormatter = new DecimalFormat("00");
	 private DateAxis domainAxis;
	 
	 public LineChartDemo1(){
		 
	 }
	 
    public LineChartDemo1(final String title,HashMapConti conti,LinkedHashMap<String,OperazioneCliente> clienti,Vector<OperazioneFornitore> fornitori,String data) throws ParseException {
        
        final CategoryDataset dataset = createDataset(data,conti,clienti);
        final JFreeChart chart = createChart(dataset);
        
        final ChartPanel chartPanel = new ChartPanel(chart);
        chartPanel.setPreferredSize(new Dimension(1200, 800));
        chartPanel.setFont(new Font("Century Gothic",Font.PLAIN, 1));
        chartPanel.setDomainZoomable(true);
        chartPanel.setRangeZoomable(true);
        
        JScrollPane scrollPane = new JScrollPane(chartPanel);
        scrollPane.setPreferredSize(new Dimension(800,800));
        scrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
        this.add(scrollPane);
        this.pack();
        this.setVisible(true);
    }
    

    /**
     * Creates a sample dataset.
     * 
     * @return The dataset.
     * @throws ParseException 
     */
    private CategoryDataset createDataset(String data,HashMapConti conti,LinkedHashMap<String,OperazioneCliente> clienti) throws ParseException {
        
        // row keys...
        final String series1 = "Costi";
        final String series2 = "Ingrosso";
        final String series3 = "Third";
        
        GregorianCalendar calendario = new GregorianCalendar();
        java.util.Date vecchiaData = new SimpleDateFormat("dd-MM-yyyy").parse(data);
        
        
      
        // create the dataset...
        final DefaultCategoryDataset dataset = new DefaultCategoryDataset();
        
    //  calendario.set(vecchiaData.getDate(), vecchiaData.getMonth(), vecchiaData.getYear());
        calendario.setGregorianChange(vecchiaData);
        for (int i=1; i<=calendario.getActualMaximum(Calendar.DAY_OF_MONTH); i++) {
        	// imposto il giorno
        	dataset.addValue(0, series2, i+"");
        	
        }

        
//        Set<String> keySet = conti.keySet();
//        for(Object key:keySet){
//             Conti value = conti.get(key);
//             dataset.addValue(-1*value.getTotale(), series1, key.toString());
//        }
//        
//        Set<String> keySet2 = clienti.keySet();
//        for(Object key:keySet2){
//             OperazioneCliente value = clienti.get(key);
//             dataset.addValue(value.getSommaAvere(), series2, key.toString());
//        }

        


        return dataset;
                
    }
    
    /**
     * Creates a sample chart.
     * 
     * @param dataset  a dataset.
     * 
     * @return The chart.
     */
    private JFreeChart createChart(final CategoryDataset dataset) {
        
        // create the chart...
        final JFreeChart chart = ChartFactory.createLineChart(
            "Line Chart Demo 1",       // chart title
            "Type",                    // domain axis label
            "Value",                   // range axis label
            dataset,                   // data
            PlotOrientation.VERTICAL,  // orientation
            false,                      // include legend
            true,                      // tooltips
            false                      // urls
        );
        
 

        chart.setBackgroundPaint(Color.white);

        final CategoryPlot plot = (CategoryPlot) chart.getPlot();
        plot.setBackgroundPaint(Color.lightGray);
        plot.setRangeGridlinePaint(Color.white);
       

        // customise the range axis...
        final NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();
        rangeAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());
        //rangeAxis.setAutoRangeIncludesZero(true);
        rangeAxis.setLabelFont(new Font("Century Gothic" ,Font.BOLD, 33));

          
        // customise the renderer...
        final LineAndShapeRenderer renderer = (LineAndShapeRenderer) plot.getRenderer();
        renderer.setBaseItemLabelFont(new Font("Century Gothic" ,Font.BOLD, 33));
//        renderer.setDrawShapes(true);

        renderer.setSeriesStroke(
            0, new BasicStroke(
                2.0f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND,
                1.0f, new float[] {10.0f, 6.0f}, 0.0f
            )
        );
        renderer.setSeriesStroke(
            1, new BasicStroke(
                2.0f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND,
                1.0f, new float[] {6.0f, 6.0f}, 0.0f
            )
        );
        renderer.setSeriesStroke(
            2, new BasicStroke(
                2.0f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND,
                1.0f, new float[] {2.0f, 6.0f}, 0.0f
            )
        );
        // OPTIONAL CUSTOMISATION COMPLETED.
        
        return chart;
    }

}
mi potete aiutare?