Bonjour, j voulais savoir si quelqun pourrai me faire une petite demonstration de la création d'un graphique en JAVA ou/et une explication. MErci.
Bonjour, j voulais savoir si quelqun pourrai me faire une petite demonstration de la création d'un graphique en JAVA ou/et une explication. MErci.
qu'entends -tu par "Graphique" ?? 1 Graphics ? je ne pense pas.... un graphique genre histogramme ou tracé de lignes ou de zones ? camembert ? .... bon courage .... à mon avis, ça se fait "à la main" ..... c'est à dire qu'il faut faire travailler ses méninges pour trouver les bonnes formules de maths ... ou trouver des classes développées par des utilisateurs assez gentils pour les mettre à disposition sur le net.
Se serait un histogramme et je ne sais pas quel classe utilisé ni comment les implementer
bah .. un histogramme c'est assez simple : un exemple ....
on a les valeurs 10, 100 et 1000 à tracer.
On va dire que l'histogramme en question est composé de barres collées , pas de lignes d'axes (pour commencer .. après tu te démerdes, le plus gros sera fait)
bon .. en gros, si tu le fais à la main (moi je sais pas faire autrement, mais je dis pas que plus simple n'existes pas) : tu as besoin d'un Canvas comme support (ou alors 1 JPanel, ça marche aussi).
Sachant que tu possède un tableau d'entiers (int) des valeurs à tracer; tu doit redéfinir la méthode paint de Canvas (ou paintComponent de JPanel)
tu y détermine ou calcule :
- la valeur maximale à tracer :
int maxVal
- la dimension mise à ta disposition :
int totalWidth
int totalHeight
- la taille des marges que tu compte imposer entre l'histogramme et le bord du composant recevant le dessin :
int hGap
int vGap
- tu peux maintenant calculer la dimension de la zone réservée au tracé et son point d'origine :
int graphX = hGap;
int graphY = vGap;
int graphW = totalWidth-2*hGap;
int graphH = totalHeight-2*vGap;
- et maintenant tu as toutes les billes pour tracer tes rectangles :
voila .... bon .. j'ai pas testé le code donc à toi de débeugguer .. si ça va pas on t'aidera de toutes façons ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 for(int i=0 ; i<mesPoints.length ; i++){ //on suppose qu'on a int [] mesPoints non null g.drawRect(graphX+i*graphW/mesPoints.length, graphY+(((maxVal-mesPoints[i])*graphH/maxVal), graphW/mesPoints.length, mesPoints[i]*graphH/maxVal); }
Pour toutes les fioritures du genre axes et vignettes ... t'as toutes les variables nécessaires pour les tracer maintenant.
Salut,
Sinon, si tu n'as pas envie de retaper tout le code, il existe des API pour créer des graphes. Tu as tout ça sur la page http://java.developpez.com/outils/api/#charts.
Parcours les sites, et essaies celui qui t'attire le plus...
Sinon, tu te le fais en manuel comme l'a expliqué NeptuS.
MDR .. jme suis fais chier pr rien ^^
euu ... mais moi j'utilise l'API standart !! .. lol .. faut bien que je trouve une excuse à mon ignorance![]()
Ok merci je l'ai fait manuellement, je vais comme meme regarder les api existantes pour la prochaines fois.
Partager