Partage
  • Partager sur Facebook
  • Partager sur Twitter

Graphique avec générations de valeurs aléatoires

    9 janvier 2018 à 16:26:19

    Salut tout le monde, j'aurais une petite question.

    Je souhaite programmer en JAVA un graphique qui affiche des valeurs aléatoire et qui s'actualise toutes les 5secondes en ajoutant une valeur à chaque fois.

    J'ai réussi a créer mon graphe et lui donner des valeurs fixes, mais je en trouve pas comment je peux l'actualiser et lui ajouter des valeurs aléatoires ? Quelqu'un aurait-il la solution ? Merci

    -
    Edité par QuentinGnt 9 janvier 2018 à 18:17:03

    • Partager sur Facebook
    • Partager sur Twitter
      9 janvier 2018 à 18:17:34

      Désolé, j'ai édit ! Merci

      • Partager sur Facebook
      • Partager sur Twitter
        20 janvier 2018 à 11:38:50

        J'ai déjà codé un programme de ce genre pour un simulateur de bourse 

        Main

        package com.Lucas.Bourse;
        
        import javax.swing.JFrame;
        
        public class Main extends JFrame {
        	private Pan pan;
        	private PorteFeuille porte;
        
        	
        	public static void main(String[] args) {
        		new Main();
        	}
        	public Main() {
        		porte = new PorteFeuille();
        		pan = new Pan(porte);
        		this.setLocationRelativeTo(null);
        		this.setTitle("Bourse");
        		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        		this.setSize(500, 500);
        		this.add(pan);
        		this.setVisible(true);
        		
        		
        		while(true) {
        			pan.repaint();
        			for(int i = 0;i < porte.getActions().size();i++) {
        				porte.getActions().get(i).add((int)(Math.random()*1000));
        			}
        			try {
        				Thread.sleep(100);
        			} catch (InterruptedException e) {
        				// TODO Auto-generated catch block
        				e.printStackTrace();
        			}
        		}
        
        	}
        }
        

        Pan

        package com.Lucas.Bourse;
        
        import java.awt.Color;
        import java.awt.Graphics;
        
        import javax.swing.JPanel;
        
        public class Pan extends JPanel {
        	private PorteFeuille porte;
        
        	public Pan(PorteFeuille porte) {
        		this.porte = porte;
        	}
        
        	public void paintComponent(Graphics g) {
        		g.setColor(Color.WHITE);
        		g.fillRect(0, 0, getWidth(), getHeight());
        		g.setColor(Color.BLUE);
        		for (int i = 0; i < porte.getActions().size(); i++) {
        			CourEntreprise cour = porte.getActions().get(i);
        			if (!cour.getValues().isEmpty()) {
        				int z = 0;
        				for (int y = (cour.getValues().size() - 54); y < cour.getValues().size(); y++) {
        					z++;
        					System.out.println(y);
        					if (y > 0) {
        
        						g.drawLine((getWidth() / 50) * (z - 1), cour.getValues().get(y - 1),
        								(getWidth() / 50) * z - 1, cour.getValues().get(y));
        					} else if (y == 0) {
        						g.drawLine(0, getHeight(),
        								(getWidth() / 50) * z - 1, cour.getValues().get(y));
        					}
        
        				}
        			}
        		}
        	}
        }
        

        CourEntreprise

        package com.Lucas.Bourse;
        
        import java.util.ArrayList;
        
        public class CourEntreprise {
        	private String name;
        	private int value;
        	private ArrayList<Integer> values; 
        	
        	public CourEntreprise(String name,int value) {
        		this.name = name;
        		this.value = value;
        		values = new ArrayList<Integer>();
        	}
        
        	public String getName() {
        		return name;
        	}
        
        	public void setName(String name) {
        		this.name = name;
        	}
        
        	public int getValue() {
        		return value;
        	}
        
        	public void setValue(int value) {
        		this.value = value;
        	}
        	public void add(int value) {
        		this.value = value;
        		values.add(value);
        	}
        
        	public ArrayList<Integer> getValues() {
        		return values;
        	}
        
        	public void setValues(ArrayList<Integer> values) {
        		this.values = values;
        	}
        
        	public boolean add(Integer arg0) {
        		return values.add(arg0);
        	}
        	
        }
        


        Voilà modifie les noms et ça devrait le faire

        Si tu ne comprends pas quelque chose n'hésite pas

        -
        Edité par Sacul360 20 janvier 2018 à 11:40:17

        • Partager sur Facebook
        • Partager sur Twitter
        "Il y a 2 choses infinies : la bêtise humaine et l'univers. Pour ce qui est de l'univers je ne suis pas sûr" Albert Einstein

        Graphique avec générations de valeurs aléatoires

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown