Applet Histogramm

P

Philip_A

Gast
Hallo liebe Leute,

ich muss eine Hausaufgabe abgeben bei welcher es um Java Applets geht. Wir sollen Histogramme programmieren, die so aussehen und auch diese Funktion haben.
Link zum Applet: Histogramm-Applet

Für das erste Histogramm habe ich folgendes programmiert nur bekomme ich nach wie vor diese beiden Fehlermeldungen:
*.java uses unchecked or unsafe operations
Recompile with -Xlint: unchecked for details.

Hier mein Programmcode:
[Java]
package blatt6;

import java.applet.Applet;
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.Point;
import java.awt.Rectangle;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.util.ArrayList;
import java.util.Arrays;

public class Histogramm extends Applet
implements MouseListener
{

private static final String PARAMS = "4.37 3.87 4.00 4.03 3.50 4.08 2.25 4.70 1.73 4.93 1.73 4.62 3.43 4.25 1.68 3.92 3.68 3.10 4.03 1.77 4.08 1.75 3.20 1.85 4.62 1.97 4.50 3.92 4.35 2.33 3.83 1.88 4.60 1.80 4.73 1.77 4.57 1.85 3.52 4.00 3.70 3.72 4.25 3.58 3.80 3.77 3.75 2.50 4.50 4.10 3.70 3.80 3.43 4.00 2.27 4.40 4.05 4.25 3.33 2.00 4.33 2.93 4.58 1.90 3.58 3.73 3.73 1.82 4.63 3.50 4.00 3.67 1.67 4.60 1.67 4.00 1.80 4.42 1.90 4.63 2.93 3.50 1.97 4.28 1.83 4.13 1.83 4.65 4.20 3.93 4.33 1.83 4.53 2.03 4.18 4.43 4.07 4.13 3.95 4.10 2.27 4.58 1.90 4.50 1.95 4.83 4.12 "
;
private static final int LEFT_MARGIN = 40;
private static final int RIGHT_MARGIN = 15;
private static final int DOWN_MARGIN = 60;
private static final int TOP_MARGIN = 10;
private static final int KLICK_BAR_HEIGHT = 30;
private static final int APP_WIDTH = 700;
private static final int APP_HEIGHT = 500;
private static final int MIN_PERCENT = 3;
private static final int MAX_PERCENT = 47;
private double minParam;
private double maxParam;
private double intervalWidth;
private double maxFreq;
private double arithmeticMean;
private double pseudoMean;
private double relative_freqs[];
private double data[];
private int ceilValue;
private int k;
private int dataSize;

public Histogramm()
{
k = 10;
}

public void init()
{
setSize(700, 500);
addMouseListener(this);
String[] params =
"4.37 3.87 4.00 4.03 3.50 4.08 2.25 4.70 1.73 4.93 1.73 4.62 3.43 4.25 1.68 3.92 3.68 3.10 4.03 1.77 4.08 1.75 3.20 1.85 4.62 1.97 4.50 3.92 4.35 2.33 3.83 1.88 4.60 1.80 4.73 1.77 4.57 1.85 3.52 4.00 3.70 3.72 4.25 3.58 3.80 3.77 3.75 2.50 4.50 4.10 3.70 3.80 3.43 4.00 2.27 4.40 4.05 4.25 3.33 2.00 4.33 2.93 4.58 1.90 3.58 3.73 3.73 1.82 4.63 3.50 4.00 3.67 1.67 4.60 1.67 4.00 1.80 4.42 1.90 4.63 2.93 3.50 1.97 4.28 1.83 4.13 1.83 4.65 4.20 3.93 4.33 1.83 4.53 2.03 4.18 4.43 4.07 4.13 3.95 4.10 2.27 4.58 1.90 4.50 1.95 4.83 4.12 "
.split("\\s");
if(params != null)
{
data = new double[params.length];
dataSize = data.length;
double sum = 0.0D;
for(int i = 0; i < dataSize; i++)
{
double d = Double.parseDouble(params.trim());
data = d;
sum += d;
}

Arrays.sort(data);
minParam = data[0];
maxParam = data[data.length - 1];
ceilValue = (int)Math.ceil(maxParam);
arithmeticMean = sum / (double)dataSize;
computeData();
}
}

private void computeData()
{
intervalWidth = (maxParam - minParam) / (double)k;
relative_freqs = new double[k];
pseudoMean = 0.0D;
for(int i = 0; i < k; i++)
{
int count = 0;
java.util.List interval = new ArrayList();
for(int j = 0; j < data.length; j++)
{
if(data[j] >= minParam + intervalWidth * (double)i && data[j] < minParam + intervalWidth * (double)(i + 1))
{
count++;
interval.add(Double.valueOf(data[j]));
}
}

double median = 0.0D;
if(!interval.isEmpty())
{
median = ((Double)interval.get(interval.size() / 2)).doubleValue();
}
relative_freqs = (double)count / (double)data.length;
pseudoMean += relative_freqs * median;
}

maxFreq = Math.ceil(max(relative_freqs) * 10D) / 10D;
}

public void paint(Graphics g)
{
Point n = new Point(40, getBounds().height - 60);
Point ul = new Point(40, 10);
Point dr = new Point(getBounds().width - 15, getBounds().height - 60);
double histogramHeight = n.y - ul.y;
double histogramWidth = dr.x - n.x;
g.setFont(new Font("Dialog", 1, 12));
g.drawLine(n.x, n.y, ul.x, ul.y);
g.drawLine(n.x, n.y, dr.x, dr.y);
g.drawString("0", n.x - 18, n.y + 18);
int xPins = (ceilValue + 1) * 2;
double xPinWidth = histogramWidth / (double)xPins;
for(int i = 1; i <= xPins; i++)
{
g.drawLine(Math.round((float)((double)n.x + (double)i * xPinWidth)), n.y, Math.round((float)((double)n.x + (double)i * xPinWidth)), n.y + 5);
g.drawString((new StringBuilder()).append((double)i * 0.5D).append("").toString(), (n.x + (int)((double)i * xPinWidth)) - 5, n.y + 20);
}

int yPins = 12;
int yPinWidth = (int)histogramHeight / yPins;
double yPinStep = maxFreq / (double)(yPins - 1);
for(int i = 1; i <= yPins; i++)
{
g.drawLine(n.x, n.y - i * yPinWidth, n.x - 5, n.y - i * yPinWidth);
g.drawString(String.format("%1.2f", new Object[] {
Double.valueOf((double)i * yPinStep)
}), n.x - 35, (n.y - i * yPinWidth) + 5);
}

double pxWidthPerParam = histogramWidth / (double)(ceilValue + 1);
double start = pxWidthPerParam * minParam;
double end = pxWidthPerParam * maxParam;
double rectDistance = end - start;
double rectWidth = rectDistance / (double)k;
double pxHeightPerRelaltionPoint = histogramHeight / maxFreq;
g.setColor(Color.DARK_GRAY);
for(int i = 0; i < k; i++)
{
int barHeight = (int)(pxHeightPerRelaltionPoint * relative_freqs);
g.fillRect((int)(start + rectWidth * (double)i) + n.x, n.y - barHeight, (int)rectWidth, barHeight);
}

g.setColor(Color.LIGHT_GRAY);
g.fillRect(n.x, getBounds().height - 30, getBounds().width - 15 - 40, (int)histogramWidth);
g.setColor(Color.GREEN);
g.fillRect((int)(pxWidthPerParam * arithmeticMean + (double)n.x), 10, 2, (int)histogramHeight);
g.setColor(Color.RED);
g.fillRect((int)(pxWidthPerParam * pseudoMean + (double)n.x), 10, 2, (int)histogramHeight);
}

public void mouseClicked(MouseEvent e)
{
Point klick = e.getPoint();
if(klick.y <= getBounds().height && klick.y >= getBounds().height - 30 && klick.x >= 40 && klick.x <= getBounds().width - 15)
{
double p = (double)klick.x / (double)(getBounds().width - 15 - 40);
p = (p * 47D + 3D) / 100D;
k = (int)(p * (double)dataSize);
computeData();
repaint();
}
}

public void mousePressed(MouseEvent mouseevent)
{
}

public void mouseReleased(MouseEvent mouseevent)
{
}

public void mouseEntered(MouseEvent mouseevent)
{
}

public void mouseExited(MouseEvent mouseevent)
{
}

private static double max(double array[])
{
if(array == null)
{
throw new IllegalArgumentException("Array nicht initialisiert!");
}
double max = array[0];
for(int i = 1; i < array.length; i++)
{
if(array > max)
{
max = array;
}
}

return max;
}
}
[/Java]

Er compiliert zwar aber beim appviewer sagt er mir dann Applet nicht initialisiert.
Wäre toll wenn mir wer weiterhelfen könnte, danke!
 
Zuletzt bearbeitet von einem Moderator:

Marco13

Top Contributor
Die Warnung hat mit dem Fehler ggf. nichts zu tun, um den Fehler zu vermeiden (einfach den Anweisungen auf dem Bildschirm folgen und) z.B.
java.util.List interval = new ArrayList();
durch
java.util.List<Double> interval = new ArrayList<Double>();
ersetzen.

Gibt's keinen Stack Trace?
 
P

Philip_A

Gast
Der Fehler verschwindet dank deines Hinweises Marco13 aber nach wie vor funktioniert der appletviewer nicht.

@Templarthelast: WO müsste ich das dann machen?
 
P

Philip_A

Gast
Es gibt jetzt in der EIngabeaufforderung keine Fehler mehr nur wenn ich den appletviewer aufrufe sagt er mir "Starten: Applet nicht initialisiert"
 

KSG9|sebastian

Top Contributor
Und in der JavaConsole in deiner IDE/CommandLine gibt es definitiv einen Stacktrace. Falls es den nicht gibt hast du irgendwo ein
Code:
try {
  doAll();
catch(Throwable t) {
  // nop
}
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Java-Applet zur Mittelwertberechnung Java Basics - Anfänger-Themen 3
D Java Applet wird nicht im Browser angezeigt Java Basics - Anfänger-Themen 6
M bestehendes Projekt als Applet speichern Java Basics - Anfänger-Themen 2
S Erste Schritte Java - Applet - Rechteck ständig versetzen Java Basics - Anfänger-Themen 14
A Applet Plot für atan erstellen Java Basics - Anfänger-Themen 1
S Erste Schritte Java Applet lässt sich im Browser nicht öffnen Java Basics - Anfänger-Themen 9
K JDK installieren displays java applet für MAC Java Basics - Anfänger-Themen 10
S Zeichen von abgerundeten Rechtecken auf einem Applet Java Basics - Anfänger-Themen 5
J Einfache einbindung eines Bildes in ein Applet Java Basics - Anfänger-Themen 4
S Klassen Applet extern aufrufen Java Basics - Anfänger-Themen 1
J Erstes Applet läßt sich nicht anzeigen Java Basics - Anfänger-Themen 2
C Applet Probleme Java Basics - Anfänger-Themen 1
A Compiler-Fehler Problem beim einbinden der applet Klasse Java Basics - Anfänger-Themen 2
M Erste Schritte Java Applet - HTML Seiten auslesen und in Access Datenbank schreiben? Java Basics - Anfänger-Themen 15
G Applet in ein JSP einbinden Java Basics - Anfänger-Themen 1
C Java-Applet Fehler "NoClassDefFoundError"? Java Basics - Anfänger-Themen 1
C Java Applet Fragen: Serialisierung, Excel import Java Basics - Anfänger-Themen 2
C Kalender in Applet einfügen Java Basics - Anfänger-Themen 0
J JavaScript findet Applet Methode nicht Java Basics - Anfänger-Themen 2
J Punkte im Java-Applet verbinden Java Basics - Anfänger-Themen 4
D Bild im Applet anzeigen Java Basics - Anfänger-Themen 3
V Text aus einer .txt dynamisch ins applet einpassen Java Basics - Anfänger-Themen 0
K Applet funz. im Browser nicht Java Basics - Anfänger-Themen 11
M Java-Applet: Bild einbinden (getImage) Java Basics - Anfänger-Themen 0
thet1983 Erste Schritte <param> Tag in Applet Java Basics - Anfänger-Themen 4
F Swing Applet: mehrere Komponenten hinzufügen Java Basics - Anfänger-Themen 1
F Platzieren von Komponenten in Swing Applet funktioniert nicht Java Basics - Anfänger-Themen 3
G Signiertes Applet wird nicht ausgeführt Java Basics - Anfänger-Themen 1
Y Applet: Verschlüsselung Java Basics - Anfänger-Themen 3
B JPanel/JFrame in ein Applet umwandeln (Webfähig) Java Basics - Anfänger-Themen 7
F signiertes Applet fkt. nicht bei lokalem Aufruf Java Basics - Anfänger-Themen 2
K Frage zu Applet Java Basics - Anfänger-Themen 3
V While Schleife für ganzes Applet Java Basics - Anfänger-Themen 6
H 27 Kreise Zeichnen Java Applet Java Basics - Anfänger-Themen 2
G Java Applet aus Eclipse heraus testen? Java Basics - Anfänger-Themen 6
S Applet findet Klasse nicht Java Basics - Anfänger-Themen 7
R Java Applet mit Mausklick ansprechen Java Basics - Anfänger-Themen 3
C Java Applet in html. Pong - old school Spiel Java Basics - Anfänger-Themen 10
S Applet-Objekt ist vor dem Hintergrund Java Basics - Anfänger-Themen 11
F Problem mit Applet Java Basics - Anfänger-Themen 5
A Applet mit Object-Tags einbinden. Java Basics - Anfänger-Themen 3
S Erste Schritte Fenster wechsel im Applet Java Basics - Anfänger-Themen 7
S Applet Deployment Java Basics - Anfänger-Themen 2
X Applet Fehler: java.lang.reflect.InvocationTargetException Java Basics - Anfänger-Themen 45
H Applet - main()-Methode Java Basics - Anfänger-Themen 4
K Applet wird nicht im Browser und Appletviewer angezeigt Java Basics - Anfänger-Themen 5
L Applet : keine Recht für Zugriff auf Clipboard (trotz Zertifikat) Java Basics - Anfänger-Themen 4
N Erste Schritte Applet zeichnet Bild nicht Java Basics - Anfänger-Themen 10
H Klassen in Eclipse stellt es im Ausgabe-Applet nicht dar Java Basics - Anfänger-Themen 5
L Applet soll Html-File öffnen Java Basics - Anfänger-Themen 2
L NetBeans Applet in html Java Basics - Anfänger-Themen 4
Dogge Start:Applet nicht Initialisiert Java Basics - Anfänger-Themen 11
D Applet beenden Java Basics - Anfänger-Themen 7
Dogge Problem mit paint(Graphics g) im Applet Java Basics - Anfänger-Themen 13
M RSA Applet ohne Cipher Java Basics - Anfänger-Themen 15
B String verschlüsseln - Applet - ohne BASE64 Java Basics - Anfänger-Themen 7
S Methode in Applet starten Java Basics - Anfänger-Themen 2
M AWT Applet - Button aus anderer Klasse abfragen Java Basics - Anfänger-Themen 4
W Probleme mit Java Applet Java Basics - Anfänger-Themen 5
M Applet kann in Browser nicht ausgeführt werden Java Basics - Anfänger-Themen 4
L Applet: Laden unterbricht den Browserfokus (scrollen) Java Basics - Anfänger-Themen 2
Z Applet startet nicht bei Domain mit Umlaut Java Basics - Anfänger-Themen 2
B Externe Libraries fuer Applet ... Pfad eingeben? Java Basics - Anfänger-Themen 23
Helgon ClassNotFound Applet Java Basics - Anfänger-Themen 6
U Applet Signiert und trotzdem Fehlermeldung Java Basics - Anfänger-Themen 18
E Schach in Java-Applet <No main classes found> Java Basics - Anfänger-Themen 5
S Applet Java Basics - Anfänger-Themen 2
S [Applet] Objekte von init bei paint benutzen Java Basics - Anfänger-Themen 9
E Applet wird nicht angezeigt Java Basics - Anfänger-Themen 11
P Problem- Java Applet wird nicht ausgeführt Java Basics - Anfänger-Themen 9
B Applet - Laden eines Java-Fensters bricht ab Java Basics - Anfänger-Themen 6
N Import Problem, Applet will nicht Java Basics - Anfänger-Themen 6
M Applet Eclipse Vollbild Java Basics - Anfänger-Themen 3
K Befehl per Shell an Java-Applet JAR übergeben Java Basics - Anfänger-Themen 16
I Java Applet Java Basics - Anfänger-Themen 8
D Java Applet Dateien auf Server auslesen? Java Basics - Anfänger-Themen 8
L Referenced Libraries korrekt in Java Applet einbinden.. Java Basics - Anfänger-Themen 2
KBJ Java Applet Gästebuch Java Basics - Anfänger-Themen 12
T Java Applet braucht mehrere Minuten zu Start Java Basics - Anfänger-Themen 5
U Applet wird nicht angezeigt Java Basics - Anfänger-Themen 2
J J-Applet, Frage Java Basics - Anfänger-Themen 19
J Applet farblich gestalten Java Basics - Anfänger-Themen 5
M Applet lokaler Festplattenzugriff Java Basics - Anfänger-Themen 25
X Applet - Client/Server Java Basics - Anfänger-Themen 2
M Applet ist nur graues Feld Java Basics - Anfänger-Themen 12
O webserver für Applet und php Java Basics - Anfänger-Themen 7
J Fehlermeldung: Applet nicht initialisiert Java Basics - Anfänger-Themen 24
C Java Applet Probleme Java Basics - Anfänger-Themen 4
S Probleme mit Java 3D Tutorial (Applet) Java Basics - Anfänger-Themen 7
S Input/Output Problem mit dateizugriff innerhalb der .jar (Applet) Java Basics - Anfänger-Themen 2
M Applet + BilderDownload Java Basics - Anfänger-Themen 36
O Applet Wetterticker Java Basics - Anfänger-Themen 17
W KeyListener auf Applet mit Runnable Java Basics - Anfänger-Themen 4
M Bild in Applet darstellen Java Basics - Anfänger-Themen 6
W Applet funktiniert nur in Eclipse Java Basics - Anfänger-Themen 2
S Erste Schritte Machbarkeit: Applet oder GUI-Applikation? Java Basics - Anfänger-Themen 3
R Daten von Applet an Website Java Basics - Anfänger-Themen 4
A Linie Zeichnen Applet mit Double Wert Java Basics - Anfänger-Themen 3
O (von Applet) daten an Server übergeben Java Basics - Anfänger-Themen 4
T Erste Schritte Java Applet wird nur geladen Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben