2016-10-12 3 views
2

Ich verwende pzmap, um Systempole und Nullen für verschiedene Werte von L zu plotten. Aber das Diagramm hat zusätzliche YTick Labels auf der rechten Seite, die ich in den Achseneigenschaften nicht sehen kann. Auch habe ich nicht den Griff, der den konstanten Dämpfungsgitterlinien entspricht, deren Farbe und Eigenschaften ich gerne ändern würde.pzplots - Yticks und Colorbar Ausgabe

MWE

clear;clc 
cb=parula(10); 
s=tf('s'); 
L_array=5:5:50; 

figure; hold on; 
for i=1:length(L_array) 
    L=L_array(i); 
    G=((58.2+11.7*L)*s^2*25^2+(3996.8 + 815.7*L)*s*25+815.7*25^2)/(s^2*(s^2*25^2+126.9*s*25+(3996.8+1.9*25^2))); 
    CL=feedback(G,1); 
    pzmap(CL); 
end 
h = findobj(gca,'type','line'); 
for jj=2:length(h) 
    set(h(jj),'MarkerSize',12,'Color',cb(floor(jj/2),:)); 
end 
grid; 

colormap(parula); 
c=colorbar; 

Auch wird das invertierte colorbar d.h. Blau zu größeren L entspricht und vice versa. Ich möchte es invertiert haben! Danke im Voraus!

+0

Übrigens ist die Colormap nicht invertiert. Schreibe Pause (0.2); nach pzmap in der Schleife und Sie werden sehen, dass die ersten Punkte sind diejenigen, die später blau sind. –

+0

Ja, du hast recht, aber wenn die Farbleiste am Ende einrastet, werden die Farben umgekehrt ... – Zero

+0

Ich habe die umgekehrte Reihenfolge der Sache durch einfaches Verwenden von flipud() auf dem Jet für die Zuweisung Operation ... aber immer noch ' Ich finde einen Handle für YTick. Auch kann ich nicht den Griff für die konstanten Dämpfungslinien – Zero

Antwort

0

Ich konnte keinen Griff zu den gewünschten Objekten in der Handlung finden. Ich habe jedoch einige zusätzliche Erkenntnisse. Das Gitter, das pzmap entspricht, hat inhärent eine sgrid. Die Griffe dieses Gitters erscheinen nicht in den Eigenschaften gca. Du kannst also nichts dagegen tun. Selbst die pzoptions ermöglicht es Ihnen nicht, diese Einstellungen zu ändern. Zusätzlich entsprechen die zusätzlichen Y-Ticks Linien konstanter Eigenfrequenzen.

Alternativ ist es besser, den Befehl sgrid direkt zu verwenden. Um die konstante Dämpfungslinien zu wählen,

z = [0, 0.25, 0.5, 0.75, 1]; 

Um die zusätzlichen Y-Ticks, zu entfernen

wn = []; 

Jetzt benutzen sgrid und Gitter Befehl zu bekommen, was Sie wollen.

sgrid(z,wn); 
grid; 

Ich kann nicht noch irgendwelche Eigenschaften der Gitterlinien mit sgrid zugeordnet ändern aber es verbessert noch das Aussehen der Handlung. Die Frage ist noch offen für die Untersuchung.