|
|
3D Zeichnung mit Farbzuweisung für Punkten im Raum |
|
maximinixxl |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 08.04.2008, 13:27
Titel: 3D Zeichnung mit Farbzuweisung für Punkten im Raum
|
|
Hallo Freunde,
ich habe noch nie mit MatLab gearbeitet und muss aber für mein Professor mehrere Zeichnungen mit MatLab anfertigen.
Es sind immer ca. 10 000 bis 20 000 Punkten in einem Raum, welcher durch ein spezielles Programm klassifiziert wurden(Gruppenbildung). Nunn sollen die Punkten im Raum nach ihrem Klassen farbig markiert werden und bei 3 Koordinaten und von oben drauf gesehen erkennt man dann verschiedenen färbigen Flächen.
die Daten sehen Beispielhaft in Exel so aus
Farbe x y z
1 1 1 1
2 2 2 2
3 3 3 3
4 4 4 4
Könnte jemand mir bitte zeigen wie das mit MatLab 7.1 geht???
Ich wäre sehr Dankbar für eure Hilfe.
|
|
|
|
|
tompie |
Forum-Guru
|
|
Beiträge: 260
|
|
|
|
Anmeldedatum: 19.09.07
|
|
|
|
Wohnort: München
|
|
|
|
Version: immer alles
|
|
|
|
|
|
Verfasst am: 08.04.2008, 16:02
Titel:
|
|
Hallo,
grundsätzlich gilt: Immer ein Plot pro Farbe. Dann vor dem nächsten Plot das Kommando
durchführen, sonst wird der Plot wieder überschrieben. Du kannst die xyz-Koordinaten z.B. in cell arrays sammeln und jeder Klasse eine entsprechende Nummer zuordnen, dann kannst Du immer ganz leicht darauf zugreifen.
Beispiel für 2 Klassen:
... oder so ähnlich
Gruß tompie
|
|
|
maximinixxl |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 08.04.2008, 20:04
Titel:
|
|
hallo tompie,
vielen Dank für deine schnelle Antwort. Ich habe nocht nichts testen können, da ich noch nicht im Labor bin. Jedoch befürchte ich, dass ich die Punkte selbst sortieren müsse und das bei 20 000 Punkten ist ein bißchen schlecht.
Es sind 4 Spalten in Excel, 3 davon sind die Daten und die 1. ist die zugehörige Klasse. nur sind die Klassen durcheinander und die zu sortieren würde Wochen dauern.
Ich habe 4 Variablen aus der Tabelle gemacht. Plotten geht auch, aber wie kann man MatLab dazu bringen, der Vektor(Variable) mit der ganzen Klassen automatisch als Farbe den Punkten zu zu ordnen.
Bei deiner Methode müsste ich selbst 9 Variablen kreieren und die punkte dazu angeben, wenn ich dich richtig verstanden habe. Aber ich möchte MatLab selbst erledigen lassen, den es ist für ein normale Mensch definitiv unmöglich so viele Daten per Hand zu sortieren.
Danke noch mals für deine Hilfe.
|
|
|
Michaela |
Forum-Century
|
|
Beiträge: 239
|
|
|
|
Anmeldedatum: 12.07.07
|
|
|
|
Wohnort: ---
|
|
|
|
Version: bis 2007b
|
|
|
|
|
|
Verfasst am: 08.04.2008, 22:09
Titel:
|
|
Hast Du die Klasse als string oder Zahl? Das sortieren nach Spalte4 kann man in jedem Fall automatisieren..
_________________
---------------------------------------------------------------
Leider habe ich daheim zwar Internet aber kein Matlab - daher sind alle Syntaxbeispiele circa Angaben.....
|
|
|
tompie |
Forum-Guru
|
|
Beiträge: 260
|
|
|
|
Anmeldedatum: 19.09.07
|
|
|
|
Wohnort: München
|
|
|
|
Version: immer alles
|
|
|
|
|
|
Verfasst am: 09.04.2008, 09:34
Titel:
|
|
|
|
|
Hallo,
von Hand sortieren verlangt keiner von Dir. Das wäre vor 60 Jahren ein Thema gewesen, aber heute haben wir u.a. Excel und natürlich Matlab.
Trage alle möglichen Klassen-Werte und auch die Farben/Linestyles in neuen Variablen ein. Dann gehst Du alle diese Klassen-Werte der Reihe nach durch. Zum Beispiel so:
Da braucht man auch nix sortieren.
In Zeile 1 definierst Du alle vorkommenden Klassen, in Zeile 2 die zugehörigen Farben/Linestyles usw. Dann habe ich 10 Beispieldaten erzeugt, da stehen dann natürlich Deine Daten aus der Excel-Datei. In der for-Schleife geht man alle vorkommenden Klassen durch und sucht sich jeweils die xyz-Daten der entsprechenden Klasse zusammen. Das geschieht in der magischen Zeile
Damit wird in s ein logical array erzeugt, das 1en an den Stellen setzt, wo der Vergleich zutrifft, ansonsten 0en. Mit diesem logical array geht's dann in den plot3-Befehl. Klasse 1 wird dann rot dargestellt, Klasse 2 grün usw. Das Progrämmchen sollte eigentlich auch mit 20000 Daten recht zügig durchlaufen.
Gruß tompie
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2024
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|