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

Mehrere Fragen zu plot3()

 

ShadowCoder
Forum-Newbie

Forum-Newbie


Beiträge: 7
Anmeldedatum: 20.07.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 20.07.2010, 20:24     Titel: Mehrere Fragen zu plot3()
  Antworten mit Zitat      
Hi und zwar möchte ich eine etwas umfangreichere Grafik mit plot3() erstellen und hab folgende Probleme:

(a) Linienstil: Ich habe versucht per
Code:

plot3(rechts,links,oben,'blue', 'Linewidth', 2,'MarkerEdgeColor','k','LineSpec','.-or' );
 

oder auch
Code:

plot3(rechts,links,oben,'blue', '.-or' ,'Linewidth', 2,'MarkerEdgeColor','k' );
 

den Linienstil zu verändern.
Ich bekomm aber entweder
??? Error using ==> plot3
String argument is an unknown option.
oder
??? Error using ==> plot3
Invalid property found.
Object Name : line
Property Name : 'LineSpec'.
als Fehler. Dabei wird in der Hilfe angegeben, dass "all high level plotting functions, accept a LineSpec argument that defines three components used to specify lines".

(b) Und zweitens könnt ihr mir sagen ob es möglich is, in dem erzeugten 3d plot, das grid nur auf 2 Ebenen zu zeichnen?

(c) ist es auch möglich bilder in diesen 3d plot auf ne ebene zu projezieren?

Wär echt cool, wenn ihr mir weiterhelfen könntet..

VG und großen dank im vorraus!
Private Nachricht senden Benutzer-Profile anzeigen


ShadowCoder
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 7
Anmeldedatum: 20.07.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 20.07.2010, 21:22     Titel:
  Antworten mit Zitat      
Hi Leute,

die (a) habe ich mithilfe von:
Code:

plot3(rechts,links,oben,'blue', 'Linewidth', 2,'MarkerEdgeColor','k','LineStyle','--','Marker', '+');
 


hinbekommen!

Könnt ihr mir vielleicht noch zu der b und c helfen?
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 20.07.2010, 22:38     Titel:
  Antworten mit Zitat      
Hallo ShadowCoder,

einen 3D-Plot auf eine Eben zu projizieren, kannst Du einfach die Kamera in diese Ebene bewegen, z.B. mit view(0, 90).

Mir ist nicht klar, was das "Grid auf nur 2 Ebenen" darstellen bedeutet.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
ShadowCoder
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 7
Anmeldedatum: 20.07.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 20.07.2010, 22:49     Titel:
  Antworten mit Zitat      
Hi,
ja mir gehts im Wesentlichen darum, dass ich en Bild auf die x,y Ebene unter meinen Plot zeichne. Und ich hätte gern, dass man bei der x,y Ebene das Grid nicht sieht.

VG
Private Nachricht senden Benutzer-Profile anzeigen
 
ShadowCoder
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 7
Anmeldedatum: 20.07.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 22.07.2010, 21:02     Titel:
  Antworten mit Zitat      
Hi ich habe folgenden COde heute im web entdeckt:

Code:

% some data
% ...the image
     m=load('clown');
     img=flipud(m.X);
% ...the x/y/z
     x=1:size(img,2);
     y=100*ones(size(x));
     z=sind(x);
% the plot
     pimg=zeros(size(img)+[1,1]);
     pimg(1:end-1,1:end-1)=img;
     ph=pcolor(pimg);
     shading flat; % <- or shading interp
     line(x,y,z,...
         'marker','.',...
         'markerfacecolor',[0,0,1],...
         'linestyle','none',...
         'color',[0,0,1]);
     alpha(ph,.8);
     view(30,30);
 


Und das funktioniert wunderbar. Allerdings habe ich versucht ein eigenes Bild reinzuladen und damit klappt es nicht:
Code:

m = imread('pic.jpg')

Attempt to reference field of non-strucute array.
 




Habe auch in der Doku nachgelesen und da steht dass eine Matrix der Pixel zurückgegeben wird. Kann mir wer sagen wie ich das Bild einlesne muss, dass es funktioniert???
Private Nachricht senden Benutzer-Profile anzeigen
 
ShadowCoder
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 7
Anmeldedatum: 20.07.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 23.07.2010, 10:48     Titel:
  Antworten mit Zitat      
Hi habe es hinbekommen, mein eigenes Bild zu laden. Allerdings bringt mit die pcolor()-Reprösentation nichts. Hat niemand mal versucht ein Bild auf eine Ebene in nem Plot zu legen???

Bin momentan an folgendem Plot:
Code:


[X,map] = imread('pic.jpg');
figure
colormap(map)
surface('XData',[0 1;0 1],...
   'YData',[0 0;1 1],...
   'ZData',[10 10; 10 10],...
   'CData',X,...
   'FaceColor','texturemap');
hold on
plot3(rechts,links,oben,'blue', 'Linewidth', 2,'MarkerEdgeColor','k');
view(3)

 


klappt auch wunderbar, allerdings wird nur ein rahmen und nicht das bild angezeigt!!!
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 23.07.2010, 12:16     Titel:
  Antworten mit Zitat      
Hallo ShadowCoder,

Ist Dein JPG ist ein indexed JPG?
Code:

[X,map] = imread('pic.jpg');
figure
C = ind2rgb(X, map);
surface('XData',[0 1;0 1],...
   'YData',[0 0;1 1],...
   'ZData',[10 10; 10 10],...
   'CData',C,...
   'FaceColor','texturemap');
 

Für RGB JPEGs liefert IMREAD aber sowieso X als [height x width x 3] Array liefern, während map leer sein sollte.

Klappt das obige Beispiel?

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
ShadowCoder
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 7
Anmeldedatum: 20.07.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 23.07.2010, 12:18     Titel:
  Antworten mit Zitat      
hi so klappt es einwandfrei! vielen dank!!!!
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 - 2025 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.