Einfache Matheaufgabe - Daten auf Anzeigebereich verteilen

Status
Nicht offen für weitere Antworten.

redbomber

Bekanntes Mitglied
Hi zusammen,
ich habe eine einfach Matheaufgabe, bei dir ich aber leider irgendwie verzweifle...

Stellt euch vor ich habe einen Array mit 2000 Daten.
Diesen möchte ich auf einem Bereich (JPanel) darstellen, welcher z.B. 600 Pixel breit ist (Die breite des JPanels kann ich vergrößern/verkleinern).
Folglich fallen mehrere Daten auf ein Pixel.

Hier mein Code indem ich die Umrechnung durchführe. Dabei möchte ich für jeden Pixel (X-Achse) die Positionen der Daten "von" - "bis" erhalten, die in diesem Pixel enthalten sind:

Code:
public FromToPosition getFromToPosition(int widthWindow, MyModel model, double mousePosX){
	long lengthData = model.getLengthOfData();
	long end_Data= model.getEndPositionOfData();

        // +1, da mousePosX bei 0 beginnt
	double mousePositionX = mousePosX + 1.;

        double val = (double)lengthData /(double)widthWindow;

        long from = Math.round((mousePositionX-1.) * val);
	if (from == 0)from=1;
	if(from >end_Data ){
		from = end_Data;
	}
	
        long to = Math.round(mousePositionX * val);
	if (to == 0)to=1;
	if(to > end_Data ){
		to = end_Data;
	}
	// FromToPosition ist einfach ein Objekt, welches "von" und "bis" enthält	
	return new FromToPosition(from, to);
}

Könnt ihr mir vielleicht einen Tip geben, wie ich die Daten korrekt auf den Wertebereich verteilen kann?
 

Landei

Top Contributor
Angenommen deine Daten gehen von a bis b und deine Anzeige von u bis v, und du willst einen Original-Punkt p auf einen Pixel q abbilden. Dann hilft immer dieses Schema, bei dem man die beiden unterschiedlichen "Skalen" Rücken an Rücken klebt:
Code:
a----p           b
|----------------|
u----q           v
Die Strecke von a bis p verhält sich also zur Gesamtstrecke a bis b wie die Strecke u bis q zur Gesamtstrecke u bis v, oder:

(p-a)/(b-a) = (q-u)/(v-u) |*(v-u)
(p-a)*(v-u)/(b-a)=q-u |+u
q = u + (p-a)*(v-u)/(b-a) <---- unsere Formel

Test:
Sei a=-1, b=1 und p = 0 (also in der Mitte). Dann sollte bei u=10 und v=20 der Pixel auf q=15 liegen
q=10 + (0-(-1))*(20-10)/(1-(-1))
q=10 + 1*10/2
q=15
Hurra, stimmt!
 
Zuletzt bearbeitet:

redbomber

Bekanntes Mitglied
cool das muss ich gleich einmal ausprobieren.
Und Welche Rundung soll ich hierbei verwenden?
round, ceil oder floor?
 

redbomber

Bekanntes Mitglied
hmm, also ber sehr großen Datenmengen ist mir aufgefallen, daß eine X-Position in der View z.b. 1000 Datenpunkte darstellt. Die X-Position daneben stellt nur 1 Datenpunkt dar. Hast du eine Idee wie ich das umgehen kann?
Ich hätte ja gerne daß jede X-Position etwa dieselbe Anzahl an Daten darstellt.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
L Einfache Navigations-App schnell selber Programmieren? Bitte um Ideen und Anregungen. Allgemeine Java-Themen 17
J Einfache Sprachsteuerung Allgemeine Java-Themen 3
L Übergabe an eine eher einfache Java- Applikation wegen Kündigung Allgemeine Java-Themen 1
K Einfache Verkettete Liste mit Node Allgemeine Java-Themen 3
D RMI Einfache Chat-Anwendung mit RMI Allgemeine Java-Themen 0
L einfache Verzinsung mit for-Schleife & Ausschluss von Werten beim Einlesen Allgemeine Java-Themen 5
S Einfache Methode die Groesse eines Objekts zu ermitteln? Allgemeine Java-Themen 12
D einfache Filterung optimieren Allgemeine Java-Themen 16
M Einfache Kundenverwaltung, guter Programmierstil Allgemeine Java-Themen 3
S YUV to RGB (einfache Berechnung) Allgemeine Java-Themen 5
N einfache Klassen Allgemeine Java-Themen 18
M Schnelle Scriptsprache für einfache Funktionen? Allgemeine Java-Themen 5
E einfache grafische Oberfläche wie in MS C#? Allgemeine Java-Themen 6
V Einfache toString() generieren? Allgemeine Java-Themen 6
E einfache Frage zu Vector Allgemeine Java-Themen 8
E Einfache Frage zu ListIterator Allgemeine Java-Themen 10
E einfache Frage zu getRealPath(.) Allgemeine Java-Themen 2
E einfache Frage zu protected Allgemeine Java-Themen 10
E einfache Frage zu verdeckten Membern Allgemeine Java-Themen 2
E Einfache Fragen zu Dateien Allgemeine Java-Themen 7
I Mehrere Klassen mit den selben Daten Allgemeine Java-Themen 5
padde479 Collections Daten in Dreiecksform Allgemeine Java-Themen 13
V Umgang mit fehlenden Daten in einer Java-Datenanalyseanwendung Allgemeine Java-Themen 5
torresbig Url nach Webseiten-Login auslesen & Daten an Webseite senden Allgemeine Java-Themen 9
A Hartgecodete Daten auslagern Allgemeine Java-Themen 4
F Laden von bestimmten Daten aus TAR Archiv Allgemeine Java-Themen 23
S Webservices für binäre Daten? Allgemeine Java-Themen 5
OnDemand Daten in RAM zwischenspeichern oder lieber aus DB holen? Allgemeine Java-Themen 24
J Daten über serielle Schnittstelle empfangen Allgemeine Java-Themen 4
J JSON Daten von einer Webseite erhalten Allgemeine Java-Themen 2
S Entities aus XML - Daten. Allgemeine Java-Themen 1
M Schnelleres Speichern von XML-Daten über URLConnection Allgemeine Java-Themen 4
kodela Klasse mit "gezipten" Daten Allgemeine Java-Themen 6
M Daten aus MatLab Datei lesen Allgemeine Java-Themen 8
N Daten einer JCoTable in JTextArea anzeigen Allgemeine Java-Themen 7
kodela Klassen Klasse "vergisst" ihre Daten Allgemeine Java-Themen 2
C Daten für Klassifikationsverfahren gewinnen Allgemeine Java-Themen 6
J Daten von Quelltext Allgemeine Java-Themen 5
K OOP Daten addieren sich bei GUI-Eingabe Allgemeine Java-Themen 10
J Jasper Reports - Daten vom Hoster Allgemeine Java-Themen 2
kodela Daten während Laufzeit zugriffsbereit Allgemeine Java-Themen 15
J Millisekunde zwischen 2 Daten Allgemeine Java-Themen 6
Q Selbständig ActionEvent auslösen zum Daten senden über serielle Schnittstelle Allgemeine Java-Themen 7
J Daten aus Website-Quelltext auslesen Allgemeine Java-Themen 62
R Android Daten online senden Allgemeine Java-Themen 0
P Datenbank-MiniGUI fügt keine Daten ein Allgemeine Java-Themen 4
K Gespeicherte Daten von einer LinkedList auf vier LinkedList verteilen Allgemeine Java-Themen 6
Q-bert Daten von Java Programm speichern Allgemeine Java-Themen 4
K Datei (CSV-ähnlich) in Java einlesen & mit teil der Daten Graphen erstellen Allgemeine Java-Themen 9
A Erste Schritte Daten aus einer Website auslesen Allgemeine Java-Themen 7
OnDemand Desktop-Applikation schreiben, wie daten persistent? Allgemeine Java-Themen 9
S Erste Schritte Fehlender Gedanken-Ansatz bei Interpretation von Daten Allgemeine Java-Themen 1
J Auslesen Daten Java/HTML Allgemeine Java-Themen 15
K Große Mengen an Daten speichern Allgemeine Java-Themen 9
D Daten in MySQL-Datenbank schreiben Allgemeine Java-Themen 13
A Swing FileWriter schreibt keine Daten in Datei Allgemeine Java-Themen 13
M Daten aus anderen Programmen auslesen Allgemeine Java-Themen 2
D Best Practice Login-Daten: Wie am besten abrufen? Allgemeine Java-Themen 6
L Best Practice Log Dateien analysieren und eventuell passende Daten am Chart darstellen Allgemeine Java-Themen 1
J Serial Port Daten empfangen Allgemeine Java-Themen 5
H Daten via COM Schnittstelle erhalten Allgemeine Java-Themen 2
J Daten persistent speichern Allgemeine Java-Themen 14
S Allgemeine parallelisierte Loesung um Daten im Hintergrund zu laden..? Allgemeine Java-Themen 6
L Daten ohne Datenbank richtig abspeichern Allgemeine Java-Themen 5
G Daten aus Website auslesen Allgemeine Java-Themen 7
J Daten aus GUI auslesen und in Objekte umwandeln Allgemeine Java-Themen 6
O Serial Port Daten als Tastaturanschlag senden Allgemeine Java-Themen 0
N Zeitabstand zwischen 2 Daten(Mehrzahl von Datum) Allgemeine Java-Themen 3
T Input/Output Daten in eine Datei schreiben Allgemeine Java-Themen 4
Z daten bindung Allgemeine Java-Themen 1
A Datentypen Gregorian Calendar - 2 Daten sind gleich?? Allgemeine Java-Themen 3
L Vergleich-Xml-Daten Allgemeine Java-Themen 3
vandread Daten verschlüsseln mit Java oder Datenbank Allgemeine Java-Themen 15
A Daten in Formularen/Vorlagen erstellen und ausdrucken Allgemeine Java-Themen 3
C HtmlUnit Daten einer Tabelle bekommen ohne, dass diese eine ID aufweist Allgemeine Java-Themen 1
T Daten über port abfangen mit proxy server Allgemeine Java-Themen 12
Todesbote Excel Blattschutz aufheben und Daten einfügen Allgemeine Java-Themen 3
T Mit Apache Poi Daten aus einer Excel Tabelle kopieren und in Word einfügen Allgemeine Java-Themen 1
OnDemand PC identifizieren / Daten auslesen Allgemeine Java-Themen 15
G Combobox füllen mit daten aus einer Tabelle Allgemeine Java-Themen 4
J Maven .war enthält veraltete Daten Allgemeine Java-Themen 3
N Daten aus Jar laden Allgemeine Java-Themen 10
P Datentypen String-Daten zu Byte-Zahlen konvertieren - Komme nicht weiter nach vielem versuchen :-/ Allgemeine Java-Themen 7
K Input/Output Daten speichern / laden Allgemeine Java-Themen 2
M Best Practice: Daten aufnehmen-speichern-bereitstellen Allgemeine Java-Themen 8
T Daten effizient verwalten Allgemeine Java-Themen 4
B JTable eigene Daten Add Methode Allgemeine Java-Themen 2
S OOP Apache Commons Math - Verwendung von Genetics - Wie werden Daten in Chromosomen gespeichert? Allgemeine Java-Themen 4
C Daten über URL an PHP verschicken Allgemeine Java-Themen 4
R Daten aus DB auslesen in ein formular (JSP) Allgemeine Java-Themen 13
S Library fuer Internet-Text-Daten-Quellen..? Allgemeine Java-Themen 8
H OOP Daten über TCP Allgemeine Java-Themen 5
H Input/Output Binäre Daten konvertieren, Output hat Zeilenumbrüche?? Allgemeine Java-Themen 9
D Daten eines User auslesen. Allgemeine Java-Themen 5
B Input/Output Einbinden von Daten in Java Allgemeine Java-Themen 3
L Einbinden von Daten in ausführbare Jar Allgemeine Java-Themen 6
N Methoden Einzelne Daten aus "Person" auslesen Allgemeine Java-Themen 3
R SerialPort auslesen und Daten verarbeiten Allgemeine Java-Themen 23
ARadauer Wo liegen die Daten der Preferences Klasse Allgemeine Java-Themen 3
Madlip Erste Schritte Java speichert Daten im Programm?!? Allgemeine Java-Themen 9

Ähnliche Java Themen

Neue Themen


Oben