Domanda

Quello che mi aspetto sotto il codice di produzione è di 4 diverse barre in una trama bar ciascuno con colori diversi, e con etichette di spunta 'A', 'B', 'C', E 'D' rispettivamente.I colori vanno bene, ma solo il primo bar ha l'etichetta 'A', gli altri tre non hanno etichette.Come posso ottenere barre di etichettatura delle barre nella trama del bar mentre li evidenziano con diversi colori?Sto usando la versione 2010b.Grazie!

deneme = [1 2 3 4];
figure;
for i=1:length(deneme)
    if i==1
        colorcode = 'b';
    elseif i==2
        colorcode = 'g';
    elseif i==3
        colorcode = 'r';
    else
        colorcode = 'k';
    end
    bar(i, deneme(i), colorcode);
    hold on;
end
set(gca,'XTickLabel',{'a'; 'b'; 'c'; 'd'})
.

È stato utile?

Soluzione

Basta aggiungere questa linea prima della tua ultima riga:

set(gca,'Xtick',1:4)
.

o combinare entrambe le linee in

set(gca,'Xtick',1:4,'XTickLabel',{'a'; 'b'; 'c'; 'd'})
.

In qualche modo, nel tuo codice come si trova lì c'è solo un segno di spunta, quindi tutte le etichette ma il primo non ha il segno di spunta per atterrare. Creare quelle zecche con set(gca,'xtick',...) risolvono il problema.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top