2016-03-22 16 views
2

Ayrıca, datetime dizelerine karşılık rasgele veri grafiği çiziyorum. Bu tarih dizeleri hepsi bir satırdadır ve yatay eksende etiketler olarak kullanılır. Tarihin bir satırda görüntülenmesini ve başka bir satırda bulunma zamanını istiyorum.Tarih ve Saati, MATLAB içindeki bir şekildeki ayrı satırlarda olmak için yatay eksenimde nasıl yerleştiririm?

Aşağıdaki resim grafiğimi açıklar. Tarihin altında görüntülenecek zamanı istiyorum.

enter image description here

Ben grafik oluşturmak için kullanılan kod aşağıda gösterilmiştir:

figure 
plot(sample(:,1),sample(:,2:5),'o') 
tick=get(gca,'xtick'); 
set(gca,'xticklabel',datestr(tick,31)) 
drawnow() 

nasıl Bugüne altında görünmesine her yatay etiketin zaman alabilirim?

+0

Bize bu grafiği oluşturmak için yazdığınız kodu gösterebilir misiniz? – rayryeng

+0

@rayryeng Kodu koduma ekledim .. Grafiği gereksinimime nasıl ayarlayabilirim? – MaK

+0

bir cevap yazdı. Bir göz atın. – rayryeng

cevap

0

Bu bir kesmek gibidir, ancak tarih ve zamanın boşlukları arasında tarih dizesi içindeki TeX komutunu \newline tanıtabilirsiniz, ardından bu yeni dizeleri, şeklin içindeki X Onay etiketleri olarak ayarlayabilirsiniz. datestr'dan çıkan karakter dizisini cellstr ile dizelerin bir hücre dizisine dönüştürmeniz, ardından \newline alanından değiştirmeyi gerçekleştirmek için strrep kullanın.

Böyle bir şey çalışması gerekir: Bir örnek arsa ile bunu yaparken

figure 
plot(sample(:,1),sample(:,2:5),'o') 
tick=get(gca,'xtick'); 
vals = cellstr(datestr(tick,31)); %// Change 
new_vals = strrep(vals, ' ', '\newline'); %// New 
set(gca,'xticklabel',new_vals); %// Change 
drawnow() 

:

:

plot(1:6, 1:6, 'r.'); 

ben kod çalıştırmasına keresinde nihai sonuç olarak bu olsun enter image description here

Bu,olduğunu varsayar.Kenetler birbirinden yeterince uzakta. Yatay eksende çok sayıda kene varsa, grafiğiniz dağınık görünecektir.

+0

strrep'i kullanırken, sadece bir sonraki satıra gitmek yerine tarih ve saat arasında '\ newline' dizgisini yazdırmak var. – MaK

+0

@MaK Hangi MATLAB sürümünü kullanıyorsunuz? – rayryeng

+0

2012b'de bir deneme yaptım. Ancak, 2015a ile kodu çalışıyorum. Şu anda, benimle daha yüksek versiyona sahip değil. – MaK