2015-05-31 218 views
-1
library(RMySQL) 
library(plotrix) 
con <- dbConnect(MySQL(), 
       user = 'root', 
       password = 'password', 
       host = 'localhost', 
       dbname='testtable1') 
rs = dbSendQuery(con, " 

       SELECT `Answer` 
       FROM `ams` 
       WHERE `QuestionText` = 'Year of Manufacture' 


       ") 
myData = fetch(rs,n=-1) 

attach(myData) 
count <- table(myData) 

percentlabels<- round(100*count/sum(count), 1) 
pielabels<- paste(percentlabels, "%", sep="") 


pie(count, main="pie chart") 
legend('topright', legend=sapply(percentlabels, as.expression), fill=factor(count)) 
}) 

我創建了幾個日期的餅圖。在圖例中,我想包括百分比值。R圖例顏色與餅圖顏色不匹配

我遇到的問題是圖例中的顏色與餅圖中的顏色不匹配。另外,如果可能的話,我希望百分比值前面帶有百分號(%)。這裏是我的曲線圖的外觀至今:

enter image description here

+1

我在下面提供了一個答案,但讓我建議你在這裏用條形圖而不是餅圖。我們處理高度比角度更好,圖表並沒有像條形圖那樣清晰地傳達差異。另一種方法是檢查R中的華夫餅圖書館並製作華夫餅圖。 –

回答

1

我看到你的代碼的兩個錯誤:在傳說中陳述

1),你有percentlabels它應該是pielabels。

2)你應該設置一個顏色矢量並在餅圖聲明和圖例中調用它。

Cols<-c("red", "green", "blue") 
pie(count, main="Pie Chart", col=Cols) 
legend('topright', legend=sapply(pielabels, as.expression), fill=Cols) 

我在我的iPad上,所以我不能檢查它,但應該這樣做。

請參閱http://www.theanalysisfactor.com/r-tutorial-part-14/一個很好的教程。