etykiety osi obrotowych w R

Odpowiedzi:

178

Nie jestem pewien, czy to masz na myśli, ale spróbuj ustawić las=1. Oto przykład:

require(grDevices)
tN <- table(Ni <- stats::rpois(100, lambda=5))
r <- barplot(tN, col=rainbow(20), las=1)

wynik

To reprezentuje styl etykiet osi. (0 = równoległe, 1 = wszystkie poziome, 2 = wszystkie prostopadłe do osi, 3 = wszystkie pionowe)

Shane
źródło
6
to działa, ale przycina etykiety. Dlatego mogą być wymagane dodatkowe opcje.
boczniak767
Czy istnieje łatwy sposób obracania etykiet znaczników osi? Np. Jeśli mam większe liczby jako etykiety znaczników osi, dobrze jest mieć je obrócone o około 45 stopni, aby uzyskać dobrą równowagę między czytelnością (w poziomie) a wydajnością przestrzenną (w pionie).
jmb
85

Użyj par(las=1).

Zobacz ?par:

las
numeric in {0,1,2,3}; the style of axis labels.
0: always parallel to the axis [default],
1: always horizontal,
2: always perpendicular to the axis,
3: always vertical.
rcs
źródło
Czy istnieje sposób, aby ustawić to tak, aby tylko etykiety osi x były prostopadłe do osi?
andrewj
18
Styl Te można ustawić osobno dla każdej osi, np.plot(1, xaxt="n", yaxt="n"); axis(1, las=2); axis(2, las=1)
rcs
4
zawsze archiwizuj par przed dokonaniem takich zmian: old.par <- par (no.readonly = T) :-)
HongboZhu
19

Jak wspomniał Maciej Jończyk , być może trzeba będzie też zwiększyć marże

par(las=2)
par(mar=c(8,8,1,1)) # adjust as needed
plot(...)
fedorn
źródło
12

Musisz użyć funkcji theme () w następujący sposób, obracając etykiety osi X o 90 stopni:

ggplot(...)+...+ theme(axis.text.x = element_text(angle=90, hjust=1))
MCH
źródło
powinna wynosić 90 stopni
C8H10N4O2
1

Najpierw utwórz dane do wykresu

H <- c(1.964138757, 1.729143013,    1.713273714,    1.706771799,    1.67977205)
M <- c("SP105", "SP30", "SP244", "SP31",    "SP147")

Po drugie, podaj nazwę pliku wykresu

png(file = "Bargraph.jpeg", width = 500, height = 300)

Po trzecie, wykreśl wykres słupkowy

barplot(H,names.arg=M,ylab="Degree ", col= rainbow(5), las=2, border = 0, cex.lab=1, cex.axis=1, font=1,col.axis="black")
title(xlab="Service Providers", line=4, cex.lab=1)

Na koniec zapisz plik

dev.off()

Wynik:

wprowadź opis obrazu tutaj

Ashok Kumar Jayaraman
źródło