2014-01-13 2 views
2

다음과 같은 변수 (과일, 가격, 국가, 유기/비 유기농, 위치)로 구성된 데이터 세트가 있습니다.패싯이있는 그룹 내에서 ggplot에 가장 잘 맞는 라인을 추가하는 방법

유기농/비 유기농, 위치 및 과일의 각 그룹별로 포인트를 통과하는 가장 적합한 라인이 추가되었습니다.

음모 - 여기 등 사과를 중심으로 한, 바나나, 체리, 날짜,

- 예를 들어>https://dl.dropboxusercontent.com/u/3803117/stackoverflow.jpeg enter image description here 은 "유기, 도시"광장, 나는 4 개 가장 맞는 라인을 싶습니다 플롯을 생성하는 데 사용한 코드 모든 도움에 너무 많은 사전>https://dl.dropboxusercontent.com/u/3803117/stackoverflow.csv

감사합니다 - 그것은 도움이 될 경우

p <- ggplot(data,aes(factor(fruit),price)) + 
    geom_violin(aes(fill=Country,trim=FALSE)) + 
    geom_boxplot(aes(fill=Country),position=position_dodge(0.9),width=.1) + 
    geom_jitter(alpha=0.5) + 
    facet_wrap(organic~location) + 
    xlab("Fruit") + 
    ylab("Price") + 
    labs(fill="Country") 

여기에 샘플 데이터 세트입니다!

+1

. 예를 들어 왼쪽 위면에서 사과, 바나나, 체리 및 날짜 각각에 대해 "가격 대 국가"라는 음모에 가장 잘 맞는 4 줄을 원하십니까? 그렇다면 "가격 대 국가"의 의미는 무엇입니까? 각 과일에 대해 각 국가의 평균 가격을 표시 할 수 있습니다. 그럴거야? – jlhoward

답변

3

geom_abline 설명서에서 찾고자하는 것을 정확하게 지정하지 않았습니까? 부분 "선형 모델에서 # 슬로프와 차단"을 참조하십시오

http://docs.ggplot2.org/current/geom_abline.html

편집 : 그냥 확인하고, SE 밴드 없이는 사례가 없다는 것을 깨달았다하지만 당신은 쉽게 SE = FALSE를 설정하여 비활성화 할 수 있습니다 :

p <- qplot(wt, mpg, data = mtcars) 
p <- p + geom_smooth(aes(group=cyl), method="lm", se=FALSE) 
p <- p + facet_grid(cyl~.) 
print(p) 

샘플 데이터 세트를 제공 한 경우 도움이 될 것입니다.

EDIT2 : 다음은 OP가 구상 한 내용과 더 유사 할 수 있습니다. 그러나, 나는 일반적으로 유용한 선형 관계를 수립하는 데 사용할 수 없습니다 그것은 국가의 순서 (또는 과일, 또는 유형, 또는 아무것도)와 같은 의미가 아님을 촉진 : 그냥 질문을 이해하려고 노력

p <- ggplot(data,aes(factor(country),price)) + 
    geom_violin(aes(fill=country,trim=FALSE)) + 
    geom_boxplot(aes(fill=country),position=position_dodge(0.9),width=.1) + 
    geom_jitter(alpha=0.5) + 
    facet_wrap(organic~location+fruit) + 
    xlab("Fruit") + 
    ylab("Price") + 
    labs(fill="country") 
p <- p + geom_smooth(aes(group=1,color=country), method="lm", se=FALSE) 
p 
+0

응답 해 주셔서 감사합니다. 샘플 데이터 세트를 추가했습니다. 한 가지 문제는 당신이 준 예제의 변수가 모두 연속적인 반면, 광산에서는 x에 범주 형 변수가 있다는 것입니다. 또한, 내가 (그룹 =)에 그룹화하는 변수가 facet_grid에 사용하는 변수와 다르기 때문에 내가하고있는 일이 약간 다르다고 생각합니다. – jmtoung

+0

그래서 패싯/그룹화 변수가 ggplot을 적용 할 때 관련이 없습니다. 패싯 당 geom_smooth --- 지금 막 가지고있는 데이터가 없습니다. 그러나 문제의 jlhoward에 대한 다른 점은 묻습니다. 어떻게 x 변수없이 추세를 공식화 할 수 있습니까? 이상적으로는'reg <- lm (price ~?)'와 같은 회귀 분석을 말하십시오. reg 객체 (또는 추세선)를 설정하려면 가격을 설명 할 것으로 예상되는 독립 변수의 이름을 지정해야합니다. 전형적인 예가 시간이지만 데이터에 타임 스탬프가 누락됩니다. – CMichael

+0

더미 변수를 사용하고 싶습니다. 예 : 미국 = 0, 프랑스 = 1, 중국 = 2 – jmtoung

관련 문제