2017-02-21 2 views
1

더미 데이터가되도록 아래 데이터를 편집했습니다. Source 열에는 독점 이름이 있습니다.ggplot2 : 백분율로 R의 스택 순서

나는 이와 같은 데이터를 가지고 있으며 쌓인 차트를 랭크 및 소스별로 재배치하고 싶지만 내 전설에 소스를 반영하고 싶습니다.

TotalBySource <- read.table(header=TRUE, stringsAsFactors=FALSE, 
text="FY  Source Rank TotalExpense TotalforFY Percent 
2006 Option1 1 46753094.2  121493809.7 0.384818735 
2006 Option7 7 7113652.3  121493809.7 0.058551562 
2006 Option6 6 34461918.9  121493809.7 0.283651644 
2006 Option8 8 10586263.1  121493809.7 0.087134177 
2006 Option5 5 1777846.8  121493809.7 0.014633229 
2006 Option4 4 17886868.4  121493809.7 0.147224525 
2006 Option3 3 2118019.3  121493809.7 0.017433146 
2006 Option2 2 796146.7  121493809.7 0.006552982 
2007 Option7 7 6833612  118232170.7 0.057798245 
2007 Option5 5 1676225.2  118232170.7 0.014177404 
2007 Option6 6 35245142.1  118232170.7 0.298101117 
2007 Option3 3 2283154.9  118232170.7 0.019310775 
2007 Option4 4 17948447.3  118232170.7 0.151806798 
2007 Option8 8 10279117  118232170.7 0.086940102 
2007 Option1 1 43397313.8  118232170.7 0.367051654 
2007 Option2 2 569158.4  118232170.7 0.004813905 
2008 Option1 1 43962329.7  115013461.7 0.382236384 
2008 Option7 7 6745206.4  115013461.7 0.058647104 
2008 Option6 6 34288244.4  115013461.7 0.298123749 
2008 Option8 8 10304301.5  115013461.7 0.089592134 
2008 Option5 5 1551682.9  115013461.7 0.013491316 
2008 Option4 4 15180864  115013461.7 0.131992062 
2008 Option3 3 2398345.7  115013461.7 0.020852739 
2008 Option2 2 582487.1  115013461.7 0.005064512") 

는이 코드 구성 :

library(ggplot2) 
p4 <- ggplot() + 
    geom_bar(aes(y = Percent, x = FY, fill = Source), data = TotalBySource, stat="identity") 

을하고 사랑스러운 누적 막대 그래프

을 가지고 있지만, 스택과 전설 순위와을 읽을 수있는 전설으로 분류 할 수 정말로 원하는 것 각각의 출처. 도움을받을 수 있을까요?

+0

당신이 필요한 순서 –

+0

감사의 수준 요소로 소스를 만들 필요가 너 @ 리차드 텔 포드하지만 어떻게 그럴 수 있니? –

+1

이 도움이됩니다 http://stackoverflow.com/questions/5208679/order-bars-in-ggplot2-bar-graph?rq=1 –

답변

1

위에서 아래로 "Option1"~ "Option8"로 막대 막 대형 차트가 나타납니다. 이자형. 사전 순으로 정렬됩니다. 다른 방향으로 정렬하는 것을 의미합니까? 이자형. 상단에있는 "Option8"을 누른 다음 아래로?

그렇다면, 당신은 다음과 같은 요소 순서를 반대로 해들리 Wickhams forcats 패키지를 사용할 수 있습니다

library(forcats) 
TotalBySource$Source <- fct_rev(TotalBySource$Source) 

p4 <- ggplot() + 
     geom_bar(aes(y = Percent, x = FY, fill = Source), 
       data = TotalBySource, stat = "identity") 
p4 

enter image description here

+0

감사합니다 @ 늑대하지만 그 방법으로 그래프 또는 전설을 정렬하지 않았다 그것을 원했다. –

+0

내가 같이 나열하고 싶었이 당신을 위해 작동하지 않는 이유 Option8 Option7 Option6 Option5 | 옵 옵션 3 옵션 2 옵션 1 –

+0

@laura, 나는 확실하지 않다. 그것은 나를 위해 일했습니다. 위의'TotalBySource' 데이터 셋에 대한 새로운 편집을 시도해보십시오. – bdemarest

관련 문제