2014-10-28 3 views
0

ggplot2을 사용하여 4 월에서 6 월까지 매주 y 축에 레이블을 지정하는 그래프를 작성하고 싶습니다.y 축을 1 주 단위로 레이블링합니다.

df <- structure(list(year = structure(1:11, .Label = c("2000", "2001", 
"2002", "2003", "2004", "2005", "2006", "2007", "2008", "2009", 
"2010"), class = "factor"), greenups_mean = c(107, 106, 124, 
107, 119, 112, 103, 113, 133, 127, 109), greenups.dtime = structure(c(11063, 
11428, 11811, 12159, 12536, 12895, 13251, 13626, 14011, 14371, 
14718), class = "Date"), gmd = c("04-16", "04-16", "05-04", "04-17", 
"04-28", "04-22", "04-13", "04-23", "05-12", "05-07", "04-19" 
)), row.names = c(NA, -11L), class = "data.frame", .Names = c("year", 
"greenups_mean", "greenups.dtime", "gmd")) 

내가 괜찮은 선 그래프를 생성 할 수 있습니다 :

여기 내 데이터입니다. y 축에서 연도의 일인 df$greenups_mean을 사용합니다.

enter image description here

library (ggplot2) 
p <- ggplot (df,aes(x=year,y=greenups_mean)) + geom_line(aes(group=1)) 
p <- p + ylab('Green-up') + xlab('Year') 
p 
하지만, 대신 년의 하루 y 축 라벨, 나는 6 월 1 일 4 월 1 일부터 매주 레이블을 좋아하고 싶습니다. 줄거리에 이산 레이블을 전달해야한다고 가정합니까?

감사

-cherrytree

답변

1

,이 방법으로 y 축 변경 scale_y_continuous

p <- ggplot (df,aes(x=year,y=greenups_mean)) + geom_line(aes(group=1)) 
p <- p + ylab('Green-up') + xlab('Year') 
p + scale_y_continuous(breaks=seq(91,152,length.out=9),limit=c(90,152),labels=c('Apr 1','Apr 8','Apr 15','Apr 22','Apr 29','May 6', 'May 13', 'May 20','May 27')) 

enter image description here

그 정확한 날짜와 breaks의 범위가 조금 떨어져이 될 수 있습니다 사용 ,하지만 그것은 기본 아이디어입니다.

+0

실제로 저는 x 축이 아니라 단지 2 개월 동안 y 축에 주간 눈금이 필요합니다. 따라서 4 월과 5 월에 8 주 동안 ~ 8 개의 눈금이있을 것입니다. – cherrytree

+0

'그린 업'은 연중 무휴입니까? – keegan

+0

예, 그린 업은 그 해의 요일을 나타냅니다. – cherrytree

관련 문제