2015-05-20 227 views
5

我試圖繪製月使用ggplot2 x軸在x軸使用名稱的一個月,但本月名稱被自動顯示爲帶小數的數字編號。我怎麼能強制腳本繪製數字的月份名稱?我用這個代碼:我怎樣才能在GGPLOT2

ggplot(df3, aes(x = month, y = PM)) + 
geom_line(aes(col = factor(travel))) + 
xlab("Month") + 
ylab(expression(paste("PM(",mu,"g/", m^3,")", sep=""))) 

數據如下發現:

dput(df3) 
structure(list(month = c(9, 10, 9, 10, 1, 2, 3, 4, 5, 9, 10, 
1, 2, 3, 4, 5, 9, 10, 11, 12, 1, 2, 3, 4, 5, 11), travel = c("Diesel bus", 
"Diesel bus", "Diesel bus", "Diesel bus", "Diesel bus", "Diesel car", 
"Diesel car", "Diesel car", "Diesel car", "Diesel car", "Bicycle", 
"Bicycle", "Bicycle", "Bicycle", "Bicycle", "Gasoline car", "Gasoline car", 
"Gasoline car", "Gasoline car", "Gasoline car", "Elcectric bus", 
"Elcectric bus", "Elcectric bus", "Elcectric bus", "Elcectric bus", 
"Elcectric bus"), PM = c(22.6496512922918, 18.1829352554303, 
28.776408085308, 30.1441935430254, 23.8938954711914, 21.8288997171693, 
22.7177263732526, 29.8606175809457, 30.530998468399, 30.1288699182287, 
28.4038889338888, 19.4761033463478, 18.9449487406838, 20.3568456145256, 
16.5431814479828, 12.8668955993652, 21.6255497367427, 21.8725590587368, 
14.7631275227865, 12.5790810203552, 15.1794028663635, 19.3508881492176, 
15.895525373979, 15.3945024820964, 15.5982689292758, 12.1219868087769 
)), .Names = c("month", "travel", "PM"), row.names = c(NA, -26L 
), class = "data.frame") 

回答

5

你也可以使用scale_x_discrete

ggplot(df3, aes(x=month, y=PM)) + 
    geom_line(aes(col = factor(travel)))+ 
    xlab("Month")+ ylab (expression(paste("PM(",mu, "g/", m^3,")", sep=""))) + 
    scale_x_discrete(labels=month.abb)