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

patch verschlechtert Qualität der Grafik

 

Juli
Forum-Anfänger

Forum-Anfänger


Beiträge: 24
Anmeldedatum: 15.01.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 07.08.2015, 14:30     Titel: patch verschlechtert Qualität der Grafik
  Antworten mit Zitat      
Hallo,

ich versuche eine Grafik zu plotten, in der patch Datenpunkte, die eigentlich nicht dazu gehören, grau hinterlegt.

Leider wird die Grafik, sobald ich den patch-Befehl ausführe unschön, d.h. die Qualität verschlechtert sich. Dies passiert schon bevor ich speichere, also es hat nichts mit der Auflösung beim Speichern zu tun.

Ich plotte mit folgendem Befehl:

Code:
achsen=axis();
patch('XData',[achsen(1),achsen(3),achsen(2),achsen(4)],'YData',[0, 20,20, 0],'FaceColor',[0.5,0.5,0.5],'FaceAlpha',0.5,'EdgeColor','none');

 


Wisst ihr woran das liegen bzw. wie ich es ändern könnte?

Im Anhang mal zwei Beispiele für mit und ohne patch.

beispiel mit patch.jpg
 Beschreibung:

Download
 Dateiname:  beispiel mit patch.jpg
 Dateigröße:  34.6 KB
 Heruntergeladen:  275 mal
beispiel ohne patch.jpg
 Beschreibung:

Download
 Dateiname:  beispiel ohne patch.jpg
 Dateigröße:  35.01 KB
 Heruntergeladen:  280 mal
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: 09.08.2015, 21:40     Titel: Re: patch verschlechtert Qualität der Grafik
  Antworten mit Zitat      
Hallo Juli,

Ich sehe zwar eindeutig Unterschiede, erkenne aber keine Verschlechterung der Qualität.
Ich nehme an, das einfügen des patch Objektes verändert den Renderer.

Code:
get(gcf, 'Renderer')   % EDITED, gca -> gcf
achsen=axis();
patch('XData',[achsen(1),achsen(3),achsen(2),achsen(4)],'YData',[0, 20,20, 0],'FaceColor',[0.5,0.5,0.5],'FaceAlpha',0.5,'EdgeColor','none');
get(gcf, 'Renderer')   % EDITED, gca -> gcf

Dies geschieht automatisch, wenn der RendererMode auf 'auto' gesetzt wurde, was der Default-Wert ist. Also einfach den Renderer wie gewünscht setzen, wenn das axes Objekt erzeugt wird.

Gruß, Jan

Zuletzt bearbeitet von Jan S am 13.08.2015, 12:55, insgesamt einmal bearbeitet
Private Nachricht senden Benutzer-Profile anzeigen
 
Juli
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 24
Anmeldedatum: 15.01.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 10.08.2015, 07:04     Titel:
  Antworten mit Zitat      
Danke schonmal für die Antwort.

Leider bekomme ich nur diese Meldung:

Code:
Error using hg.axes/get
The name 'Renderer' is not an accessible property for an instance of class 'axes'.


Meine Matlab Version ist R2012a.

LG
Private Nachricht senden Benutzer-Profile anzeigen
 
Juli
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 24
Anmeldedatum: 15.01.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 10.08.2015, 07:20     Titel:
  Antworten mit Zitat      
Hey.

Meine Fragen haben sich erledigt. Habe eine Funktion runter geladen, die Bilder schön macht und wodurch sich auch das patch Problem erledigt Smile .

Danke trotzdem!
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: 13.08.2015, 12:55     Titel:
  Antworten mit Zitat      
Hallo Juli,

Ja, da hatte ich einen Tippfehler: der Renderer gehört zur Figure, nicht zur Axes. Also "gca" -> "gcf".

Gruß, Jan
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.