www.vorhilfe.de
- Förderverein -
Der Förderverein.

Gemeinnütziger Verein zur Finanzierung des Projekts Vorhilfe.de.
Hallo Gast!einloggen | registrieren ]
Startseite · Mitglieder · Impressum
Forenbaum
^ Forenbaum
Status VH e.V.
  Status Vereinsforum

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Suchen
 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
Forum "Matlab" - 3D-Funktion aus Matrix
3D-Funktion aus Matrix < Matlab < Mathe-Software < Mathe < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Matlab"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

3D-Funktion aus Matrix: Idee?
Status: (Frage) beantwortet Status 
Datum: 21:52 So 26.11.2006
Autor: gruening

Also, ich möchte in meiner Diplomarbeit aus gemessenen Werten eine schöne 3-D-Fläche plotten. Meine Daten liegen als Matrix in der Form

       y1  y2   y3...
x1  123 434 234
x2  523        124
x3  342 987 234
.
.

vor. Diese hab ich als csv abgespeichert und schön die Kommas durch Punkte und Semikolon durch Kommas ersetzt. Mein Problem ist, dass mir viele Wertepaare fehlen, weil ich sie einfach nicht gemessen hab.
Wie kann ich diese interpolieren, dass an den Stellen nicht überall ne Null geplottet wird? Kann ich Matlab sagen, dass es durch alle gegebenen Punkte eine Funktion legen soll?  

Vielen Dank schon mal im voraus!!!!

        
Bezug
3D-Funktion aus Matrix: Antwort
Status: (Antwort) fertig Status 
Datum: 10:14 Mo 27.11.2006
Autor: Martin243

Hallo,

das Interpolieren sollte in Matlab schon klappen. Der Schlüssel dazu ist die Funktion griddata().

Mal angenommen, deine unvollständigen Daten liegen in einer Matrix zraw. Dann kannst du Folgendes machen:
z=zraw(find(zraw~=0));
[y,x]=find(zraw~=0);
[ygrid,xgrid]=find(ones(size(zraw)));
zgrid=reshape(griddata(x,y,z,xgrid,ygrid),size(zraw));

zgrid entspricht deiner ursprünglichen Matrix zraw, nur dass hier die Nullen ersetzt wurden durch interpolierte Werte. In der Hilfe zu griddata() findest du noch Parameter zu anderen Interpolationsmethoden, falls dir die Standardmethode nicht zusagt.


Gruß
Martin

Bezug
                
Bezug
3D-Funktion aus Matrix: Danke
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 08:36 Do 30.11.2006
Autor: gruening

Hallo, vielen Dank für die promte Antwort! Hatte so schnell gar nicht damit gerechnet... Hab aber gut geklappt :-)

Allerdings ist die Fläche ja jetzt noch ein bißchen eckig und kantig. Gibt es die Möglichkeit, aus den Werten eine Funktionsgleichung zu berechnen? Oder zumindest die Koeffizienten einer Funktion?

Vielen Dank

Bezug
                        
Bezug
3D-Funktion aus Matrix: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 20:54 Do 30.11.2006
Autor: Martin243

Hallo,

es ist schon möglich, wenn du einen ungefähre Vorstellung von dem Funktionstyp hast. Sieh dir dazu am besten die Hilfe der Matlab-Funktion fit an.


Gruß
Martin

Bezug
                                
Bezug
3D-Funktion aus Matrix: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 15:10 Di 05.12.2006
Autor: gruening

Vielen Dank, das werde ich mal probieren und über meine Erfahrungen berichten :-)

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


^ Seitenanfang ^
ev.vorhilfe.de
[ Startseite | Mitglieder | Impressum ]