2015-05-20 232 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)