2016-07-26 7 views
1

Ich habe viele Unterplots ich muss laden und alle zusammen mit Matlab. Ich möchte personalisierte Ticks hinzufügen, aber mein Ansatz scheint nicht zu funktionieren. Mein mwe ist folgendes:Ändern XTick in Subplot nicht funktioniert

x = 1:1:1000; 
r = rand(1000,1); 
my1 = subplot(2,3,1); 
my1 = bar(x,sort(r)); 
title ('This works') 
xlabel ('This works too') 
xlim ([0 1000]) 
my = get(gca); 
my.XTick = [1 200 499] 

Und dieser letzte Punkt funktioniert nicht. Warum? Wie kann ich es reparieren?

Antwort

2

get(gca) liefert eine struct aller Grafikeigenschaften der aktuellen Achsen, nicht die Achsen selbst behandeln. Alle Änderungen an diesem struct Eigenschaften werden nicht in Ihrem tatsächlichen axes gespiegelt. Sie müssen die Eigenschaften des axes direkt set

set(gca, 'XTick', [1 200 499]) 

mit ändern oder wenn Sie auf 2014b sind

% Don't use get(gca) to get the handle 
ax = gca; 

% Set the XTick property 
ax.XTick = [1 200 499]; 
+0

verstanden. Vielen Dank, ich bin immer noch nicht an die Matlab Grafikumgebung gewöhnt – Patapunfate