IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Servlets/JSP Java Discussion :

[Jfreechart] dépassement de l'échelle


Sujet :

Servlets/JSP Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Mars 2005
    Messages
    162
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 162
    Par défaut [Jfreechart] dépassement de l'échelle
    Bonjour!


    je me retrouve confronté à un problème assez étrange avec un de mes graphiques.

    En effet, après lui avoir spécifié que je voulais une ordonnée entière, la valeur maximale est dépassée par le trait d'ordonnée.

    Pour mieux comprendre, voici la capture d'écran:




    Maintenant, voila le code complet de ma servlet:



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    package com.fortuneo.jfortuneochart.graph;
     
    import java.awt.Color;
    import java.io.IOException;
    import java.io.OutputStream;
    import java.text.NumberFormat;
    import java.util.StringTokenizer;
     
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import javax.servlet.http.HttpSession;
     
    import org.jfree.chart.ChartFactory;
    import org.jfree.chart.ChartUtilities;
    import org.jfree.chart.JFreeChart;
    import org.jfree.chart.axis.CategoryAxis;
    import org.jfree.chart.axis.CategoryLabelPositions;
    import org.jfree.chart.axis.NumberAxis;
    import org.jfree.chart.plot.CategoryPlot;
    import org.jfree.chart.plot.PlotOrientation;
    import org.jfree.chart.renderer.category.BarRenderer;
    import org.jfree.data.category.DefaultCategoryDataset;
     
    //import com.broadvision.util.BVLog;
     
    public class historiqueConsensus2 extends HttpServlet { 
     
      /**
    	 * 
    	 */
    	private static final long serialVersionUID = -1316168591864396873L;
     
    	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 
    		HttpSession session = request.getSession(true);
    		String notes = (String) session.getAttribute("tabNotes");
     
    		String[][] tab;
    		int i = 0 ;
    		StringTokenizer st = new StringTokenizer(notes, ";");
    		tab = new String[st.countTokens()][] ;
     
    		while (st.hasMoreTokens()) {
    		        int j = 0 ;
    			StringTokenizer st2 = new StringTokenizer(st.nextToken(), "/");
    		        String[] tab2 = new String[ st2.countTokens()] ;
    			while (st2.hasMoreTokens()) {
    		                tab2[j] = st2.nextToken() ;
    		                j++ ;
    			}
    		        tab[i] = tab2 ;
    		        i++ ;
    		}
     
    	/*
    		for(int k = 0; k< tab.length; k++){
    			for(int l = 0; l < tab[k].length; l++){
    			BVLog.bvlog(1,1, tab[k][l]);
    			}
    		}
    		*/
    	    JFreeChart barChart = ChartFactory.createStackedBarChart("Nombre d'analystes", "Mois", 
    	      "Nombre", createDataset(tab), PlotOrientation.VERTICAL, false, true, false);
    	    CategoryPlot plot = barChart.getCategoryPlot();
    	    CategoryAxis domainAxis1 = plot.getDomainAxis();
    		domainAxis1.setCategoryLabelPositions(CategoryLabelPositions.UP_90);
    		NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();
    		rangeAxis.setNumberFormatOverride(NumberFormat.getIntegerInstance());
    	    BarRenderer renderer = (BarRenderer) plot.getRenderer();
     
    	    renderer.setSeriesPaint(0, Color.gray);
    	    // couleur du contour du graphe
    	    plot.setOutlinePaint(Color.black);
    	    // couleur du fond du graphe  
    	    plot.setBackgroundPaint(new Color(255, 255, 255));
    	    //couleur du fond du dessin 
    	    barChart.setBackgroundPaint(Color.white);
     
    	    response.setContentType("image/png");
    	    OutputStream out = response.getOutputStream(); 
     
    	    ChartUtilities.writeChartAsPNG(out, barChart, 305, 230); 
    	}
     
    	private static DefaultCategoryDataset createDataset(String tab[][]) {
     
    		DefaultCategoryDataset dataset = new DefaultCategoryDataset();
    	    for(int i=0 ; i<tab.length; i++){
    			int nb = Integer.parseInt(tab[i][2]);
    		    dataset.addValue(nb, "Nombre", tab[i][0]);
    		}
    	    return  dataset;
    	}
    }

    Le plus étonnant, c'est que pour les autres valeurs cela ne dépasse pas lorsque cela correspond à une valeur présente en ordonnée (ici 5)

    Par contre, mon 8 dépasse la barre des 8...


    Merci pour votre aide, et bonne année 2007 à tous!

  2. #2
    Membre confirmé
    Inscrit en
    Mars 2005
    Messages
    162
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 162
    Par défaut
    personne?

Discussions similaires

  1. [JFreeChart] Changer les échelles des axes
    Par Ixigrec59 dans le forum 2D
    Réponses: 0
    Dernier message: 04/02/2015, 18h21
  2. Réponses: 4
    Dernier message: 19/12/2007, 10h19
  3. Réponses: 1
    Dernier message: 16/06/2007, 17h47
  4. Réponses: 3
    Dernier message: 04/05/2007, 15h49
  5. [JFreeChart] Fixer l'échelle des abscisses
    Par ahury dans le forum 2D
    Réponses: 1
    Dernier message: 03/05/2007, 17h14

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo