2016-09-20 10 views
0

imagescコマンドを使用して、スケーリングされた色でマトリックスを表示するための、きれいなコードです。問題は、最終的な数字が間違っているラベルとラベルのdoesntのショー後半を持っていることである(それは1から21まででなければなりませんが、それは1から10までです)なぜmatlabはラベルの後半をスキップするのですか?

figure; 
imagesc(magic(21)); 
set(gca,'XTickLabel',{'1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21'}) 
set(gca,'YTickLabel',{'1' '2' '3' '4' '5' '6' '7' '8' '9' '10' '11' '12' '13' '14' '15' '16' '17' '18' '19' '20' '21'}) 

enter image description here

私が使用していますUbuntuの16.04そしてMatlab 2016b。

答えて

3

ラベルを追加するだけでなく、これらの目盛に位置を割り当てる必要があります。

figure; 
imagesc(magic(21)); 
ax1 = gca; 
ax1.YTick = 1:21; 
ax1.XTick = 1:21; 
ax1.XTickLabels = {'One','Two','Three',... 
ax1.YTickLabels = {'Red','Brown','Green',... 

Matlab 2014b以来、Mathworksは新しいグラフィックスシステムを作成しました。どこでもsetgetを使用する代わりに、オブジェクトとして直接グラフィックスにアクセスできます。

+0

今では数字の代わりにラベルの場合は、文字列のリストを設定したいとします(例月)。 – Woeitg

+0

@Woeitgあなたは誤解しています。 'Xtick'はラベルをどこに置くべきかを示し、' Xticklabels'はそのラベルに書かれているものを示します。両方を使用する必要があります。 –

+0

@Woeitg nice;)ほとんどの人に役立つ答えを受け入れる;) –

7

ラベルのテキストは設定しますが、ラベルの位置は設定しないため、ラベルの場所が自動的に設定され、テキストが置き換えられます。

set(gca,'XTick',...) 

次にあなたがprefferどんなこれらのラベルに書くことができます:最初に行う、ラベルの位置を設定するには

set(gca,'XTickLabel',{'banana', 'platano', 'potato',... }) 
+0

完全なコードであなたの答えを向上させることができますか? – Woeitg

+0

@Woeitg私はあなたのラベルがその場所のテキストを持っている必要はないことを明確にするために、特に除外しました。あなたは '... 'の中に何でも入れることができます。 '1:10:100'でも、あなたの場合は' 1:21' –

1

あなたがこのテストすることができます。enter image description here

imagesc(magic(21)); 
set(gca,'XLim',[1 21]) 
set(gca,'XTick',[1:1:21]) 
set(gca,'XTickLabel',{'1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21'}) 
set(gca,'YLim',[1 21]) 
set(gca,'YTick',[1:1:21]) 
set(gca,'YTickLabel',{'1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21'}) 
+0

とxlimとylimがなくても同じ結果が表示されます。 – Woeitg

+0

はい、しかし 'XTick'を使わないと' XLim'は[0.5 21.5] 'のようなものになります。 – NKN

+0

私は、違いがありますが、XlimとYLimを使用しない方が好きです。少なくともそれは良く見えます:-) – Woeitg

関連する問題