dodanie etykiet osi x i y w ggplot2

119

Jak mogę zmienić etykiety X i Y na tym wykresie?

library(Sleuth2)
library(ggplot2)
discharge<-ex1221new$Discharge
area<-ex1221new$Area
nitrogen<-ex1221new$NO3
p <- ggplot(ex1221new, aes(discharge, area), main="Point")
p + geom_point(aes(size= nitrogen)) + 
    scale_area() + 
    opts(title = expression("Weighted Scatterplot of Watershed Area vs. Discharge and Nitrogen Levels (PPM)"), 
         subtitle="n=41")
Brett Michael
źródło

Odpowiedzi:

189

[Uwaga: edytowano w celu unowocześnienia składni ggplot]

Twój przykład nie jest powtarzalny, ponieważ nie ma ex1221new(jest ex1221in Sleuth2, więc myślę, że to miałeś na myśli). Ponadto nie musisz (i nie powinieneś) wyciągać kolumn, aby je wysłać ggplot. Jedną z zalet jest to, że ggplotdziała data.framebezpośrednio z s.

Możesz ustawić etykiety za pomocą xlab()i ylab()lub uczynić je częścią scale_*.*połączenia.

library("Sleuth2")
library("ggplot2")
ggplot(ex1221, aes(Discharge, Area)) +
  geom_point(aes(size=NO3)) + 
  scale_size_area() + 
  xlab("My x label") +
  ylab("My y label") +
  ggtitle("Weighted Scatterplot of Watershed Area vs. Discharge and Nitrogen Levels (PPM)")

wprowadź opis obrazu tutaj

ggplot(ex1221, aes(Discharge, Area)) +
  geom_point(aes(size=NO3)) + 
  scale_size_area("Nitrogen") + 
  scale_x_continuous("My x label") +
  scale_y_continuous("My y label") +
  ggtitle("Weighted Scatterplot of Watershed Area vs. Discharge and Nitrogen Levels (PPM)")

wprowadź opis obrazu tutaj

Alternatywnym sposobem określenia samych etykiet (przydatnym, jeśli nie zmieniasz żadnych innych aspektów skali) jest użycie labsfunkcji

ggplot(ex1221, aes(Discharge, Area)) +
  geom_point(aes(size=NO3)) + 
  scale_size_area() + 
  labs(size= "Nitrogen",
       x = "My x label",
       y = "My y label",
       title = "Weighted Scatterplot of Watershed Area vs. Discharge and Nitrogen Levels (PPM)")

co daje identyczną liczbę jak powyżej.

Brian Diggs
źródło