Forum: PC-Programmierung Array in Java plotten


von Maxim (Gast)


Lesenswert?

Gibt es fertige Klassen zum Plotten von Arrays? Ich möchte z.B. ein 
2D-Array von boolschen Variablen ausgeben oder ein 1D-Integer-Array 
plotten, wobei der Index einer der Achsen entspricht.

von Markus (Gast)


Lesenswert?

java.util.Arrays

hat einige Methoden die dir helfen könnten

von markus (Gast)


Lesenswert?

hmm kenne keine fertige Klasse aber wie wäre es einfach mit:

for(int i=0; i<array.length; i++){
    System.out.print("Inhalt von Index " +i " ");
    System.out.println(array[i]);
}


?

von Maxim (Gast)


Lesenswert?

Naja, sollte schon grafisch sein. In C++ kann man doch irgendwie direkt 
auf den Videobuffer zugreifen und die Pixel manipulieren. Das wäre z.B. 
praktisch ...

von *.* (Gast)


Lesenswert?


von Maxim (Gast)


Lesenswert?

Ja, z.B.

von *.* (Gast)


Lesenswert?

Das ist die Beispielseite einer Bibliothek die man auch herunterladen 
kann ;)

von Java (Gast)


Lesenswert?

Oder halt mit "public void paint(Graphics g)" (Swing) selber malen.

von Läubi .. (laeubi) Benutzerseite


Lesenswert?

Das einfachste ist, du erzeugst eine Klasse die das Interface Icon 
implementiert.
http://java.sun.com/j2se/1.3/docs/api/javax/swing/Icon.html
1
int getIconHeight() 
2
--> Hier gibst du die gewünschte Höhe zurück         
3
int getIconWidth() 
4
--> Hier gibst du die gewünschte Breite zurück
5
void paintIcon(Component c, Graphics g, int x, int y)
6
--> Hier erhälst du ein Graphics Objekt(g) auf das du "malen" kannst
7
 (Die anderen Parameter kannst du vorerst ignorieren)
Nun erzeugst du ein Objekt deiner Klasse und übergibst das einem JLabel 
was du in ein JFrame einbettest:
1
JFrame f = new JFrame("Test");
2
f.add(new JLabel(new MeinePlottKlasse()));
3
f.setVisible(true);

Nix mit in Videobuffer schreiben :)

von Maxim (Gast)


Lesenswert?

Danke euch!

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.