matheraum.de
Raum für Mathematik
Offene Informations- und Nachhilfegemeinschaft

Für Schüler, Studenten, Lehrer, Mathematik-Interessierte.
Hallo Gast!einloggen | registrieren ]
Startseite · Forum · Wissen · Kurse · Mitglieder · Team · Impressum
Forenbaum
^ Forenbaum
Status Schulmathe
  Status Primarstufe
  Status Mathe Klassen 5-7
  Status Mathe Klassen 8-10
  Status Oberstufenmathe
    Status Schul-Analysis
    Status Lin. Algebra/Vektor
    Status Stochastik
    Status Abivorbereitung
  Status Mathe-Wettbewerbe
    Status Bundeswettb. Mathe
    Status Deutsche MO
    Status Internationale MO
    Status MO andere Länder
    Status Känguru
  Status Sonstiges

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Neuerdings beta neu
 Forum...
 vorwissen...
 vorkurse...
 Werkzeuge...
 Nachhilfevermittlung beta...
 Online-Spiele beta
 Suchen
 Verein...
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
StartseiteMatheForenMatlab3D erstellen aus mehr vektoren
Foren für weitere Schulfächer findest Du auf www.vorhilfe.de z.B. Deutsch • Englisch • Französisch • Latein • Spanisch • Russisch • Griechisch
Forum "Matlab" - 3D erstellen aus mehr vektoren
3D erstellen aus mehr vektoren < Matlab < Mathe-Software < Mathe < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Matlab"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

3D erstellen aus mehr vektoren: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 22:09 Mi 21.11.2007
Autor: mfis

Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.

hallo,
zuerst möchte ich voraus schicken, dass ich mich mit MATLAB nicht wirklich auskenne und dies meine ersten versuche sind.

Problem: ich habe mehrere dateien die jeweils aus 3 spalten bestehen, aber mit unterschiedlicher zeilenzahl. jede zeile steht für einen punkt (x,y,z), wobei es sich um normierte werte [0,1] handelt.

die punkte einer Datei sollen jeweils in der gleichen farbe dargestellt werden.

das auslesen funktioniert soweit:
...

fid = fopen('test1.txt');
A = fscanf(fid,'%g %g %g',[3 inf])';
fclose(fid);

PRA=A(:,1);
LWA=A(:,2);
PUA=A(:,3);


fid = fopen('test2.txt');
B = fscanf(fid,'%g %g %g',[3 inf])';
fclose(fid);

PRB=B(:,1);
LWB=B(:,2);
PUB=B(:,3);


fid = fopen('test3.txt');
C = fscanf(fid,'%g %g %g',[3 inf])';
fclose(fid);

PRC=C(:,1);
LWC=C(:,2);
PUC=C(:,3);
...


die frage ist nun, wie diese werte in einem 3D diagramm gleichzeitig dargestellt werden können?

viele grüsse
mfis



        
Bezug
3D erstellen aus mehr vektoren: Antwort
Status: (Antwort) fertig Status 
Datum: 22:50 Mi 21.11.2007
Autor: Martin243

Hallo und [willkommenmr],

es gibt mehrere Möglichkeiten, dies zu erreichen.

1.
Wenn es dir nicht darauf ankommt, die einzelnen Dateiinhalte getrennt aufzubewahren, dann kannst du sie schon beim Einlesen in je einen Vektor packen:
PR = []; LW = []; PU = [];
for i=1:anzahl_dateien,
  A = load(sprintf('test%g.txt', i)); %wegen des einfachen Dateiformats

  PR = [PR ; A(:,1)];
  LW = [LW ; A(:,2)];
  PU = [PU ; A(:,3)];
end;
plot3(PR, LW, PU, '.');


2.
Du willst getrennte Vektoren für jeden Datensatz:
<Einlesen aller Vektoren>
plot([PRA ; PRB ; PRC ; PRD ; ...] , [LWA ; LWB ; LWC ; LWD ; ...] , [PUA ; PUB ; PUC ; PUD ; ...], '.');


3.
Alternativ:
<Einlesen aller Vektoren>
hold on;
plot3(PRA, LWA, PUA, '.');
plot3(PRB, LWB, PUB, '.');
plot3(PRC, LWC, PUC, '.');
...
hold off;


Ich würde auf jeden Fall etwas mit Schleifen empfehlen, wenn die Dateinamen alle nach dem gleichen Muster aufgebaut sind.


Gruß
Martin

Bezug
                
Bezug
3D erstellen aus mehr vektoren: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 23:21 Mi 21.11.2007
Autor: mfis

das ging ja super schnell.
vielen dank!
hab die letzte variante erstmal genutzt und fkt. soweit.

mich würde jetzt noch interessieren, wie man die punkte farblich kennzeichnen kann in derart, dass alle punkte einer datei die gleiche farbe erhalten.

vielleicht noch zum hintergrund:
die punkte innerhalb einer datei repräsentieren eine pareto-)lösungsmenge bzw paretofront eines mehrkriteriellen optimierungsproblems. datei 1 ist die exakte lösung. alle anderen lösungen sind lösungen heuristischer verfahren. so dass durch dass diagramm die annäherung an die exakte front ersichtlich werden soll.
so in etwa soll es aussehen:
[Dateianhang nicht öffentlich]



Dateianhänge:
Anhang Nr. 1 (Typ: png) [nicht öffentlich]
Bezug
                        
Bezug
3D erstellen aus mehr vektoren: Antwort
Status: (Antwort) fertig Status 
Datum: 00:03 Do 22.11.2007
Autor: Martin243

Hallo,

> mich würde jetzt noch interessieren, wie man die punkte farblich kennzeichnen kann in derart, dass alle punkte einer datei die gleiche farbe erhalten.

Das geht per:
plot3(<Daten>,'.', 'Color', [r g b]);
mit [mm] $r,g,b\in[0 [/mm] ; 1]$.

Man kann natürlich auch die Form der "Punkte" verändern. Schau dir mal die Hilfe zu plot an.


Gruß
Martin

Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Matlab"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
www.schulmatheforum.de
[ Startseite | Forum | Wissen | Kurse | Mitglieder | Team | Impressum ]