WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Gerade in 3d Punktediagramm

 

Perilun
Forum-Anfänger

Forum-Anfänger


Beiträge: 32
Anmeldedatum: 26.03.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 22.07.2016, 11:04     Titel: Gerade in 3d Punktediagramm
  Antworten mit Zitat      
Hallo,

wie kann man eine Gerade in einem 3d Punktediagramm anhand der Geradengleichung zeichnen.

z.B. z=a+bx+cy

Danke!
Private Nachricht senden Benutzer-Profile anzeigen


Mmmartina
Forum-Meister

Forum-Meister


Beiträge: 745
Anmeldedatum: 30.10.12
Wohnort: hier
Version: R2020a
     Beitrag Verfasst am: 22.07.2016, 11:33     Titel:
  Antworten mit Zitat      
Mittels plot3
_________________

LG
Martina

"Wenn wir bedenken, daß wir alle verrückt sind, ist das Leben erklärt." (Mark Twain))
Private Nachricht senden Benutzer-Profile anzeigen
 
Perilun
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 32
Anmeldedatum: 26.03.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 22.07.2016, 11:36     Titel:
  Antworten mit Zitat      
Da kann ich aber keine Geradengleichung eingeben!
Private Nachricht senden Benutzer-Profile anzeigen
 
AndyAndyAndy
Forum-Anfänger

Forum-Anfänger


Beiträge: 44
Anmeldedatum: 22.12.14
Wohnort: Nähe Offenburg
Version: GNU Octave 4.1.0+
     Beitrag Verfasst am: 22.07.2016, 11:54     Titel:
  Antworten mit Zitat      
Nein, aber mit plot3 kannst du eine Linien zwischen 2 Punkten zeichnen. Wenn du die Geradengleichung hast, sollte es ein leichtes sein, die 2 Punkte daraus zu berechnen. Übrigens hast du keine Geradengleichung sondern eine Ebenengleichung angegeben...

Falls du eine Ebene einzeichnen möchtest entweder klassisch mit meshrid und mesh oder surf oder halt ezplot3
Private Nachricht senden Benutzer-Profile anzeigen
 
Perilun
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 32
Anmeldedatum: 26.03.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 23.07.2016, 19:58     Titel:
  Antworten mit Zitat      
Danke, habe auch gerade gemerkt.

Leider taucht bei mir jetzt wieder ein Problem auf.

Was ich möchte ist im gleichen Fenster ein Punktdiagramm zu erstellen und anschließend mit hold on im gleichen Fenster die Ebene platzieren.

Das versuche ich mit meshgrid zu machen, leider bekomme ich keine Ausgabe, weder als Fehler, noch sonst irgendwie.

Als Eingabe dienen zwei Vektoren (je nx1) und der dritte Wert wird nach der obigen Formel mit Hilfe von

z=a+b*vektor1+c*vektor2

bestimmt.

Bei mesh oder surf kriege ich den Fehler:

rows (Z) must be the same as length (Y) and columns (Z) must be the same as length (X),

weil mein Z-Vektor, welcher mit der Formel berechnet wird (nx1) ist, sprich von den columns würde passen, die Anzahl der rows ist aber 1

Wieso funktioniert das aber nicht?
Private Nachricht senden Benutzer-Profile anzeigen
 
AndyydnA

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 23.07.2016, 20:09     Titel:
  Antworten mit Zitat      
Um dir helfen zu können solltest du schon den kompletten Sourcecode zeigen, so dass jemand das bei sich laufen lassen kann.
 
Perilun
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 32
Anmeldedatum: 26.03.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 23.07.2016, 20:58     Titel:
  Antworten mit Zitat      
Code:
Werte=xlsread('C:\Users\...\..., 'C2:D71'); %Daten werden hochgeladen
Einsen=ones(numel(Werte)/2,1);
Einsen(:,2)=Werte(:,1);
Einsen(:,3)=Werte(:,2);

Transponierte=transpose(Einsen);

TransponiertemalEinsenwerte=Transponierte*Einsen;
Inverse=inverse(TransponiertemalEinsenwerte)

y=xlsread('C:\Users\..., 'B2:B71'); %Daten werden hochgeladen

Transponiertemaly=Transponierte*y;

b=Inverse*Transponiertemaly;

xplot=Werte(:,1);
yplot=Werte(:,2);
zplot=y;


maximum1=max(Werte(:,1));
minimum1=min(Werte(:,1));
schritt1=(maximum1-minimum1)/70;

awerte=minimum1:schritt1:maximum1

maximum2=max(Werte(:,2));
minimum2=min(Werte(:,2));
schritt2=(maximum2-minimum2)/70;

iwerte=minimum2:schritt2:maximum2;


zgerade=b(1)+b(2)*awerte+b(3)*iwerte;

figure
scatter3(xplot,yplot,zplot);
figure
mesh(awerte, iwerte, b(1)+b(2).*awerte+b(3).*iwerte)
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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 | goMatlab RSS Button 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.