R图例颜色与饼图颜色不匹配

时间:2015-05-31 04:44:32

标签: r charts legend

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))
})

我创建了一个包含多个日期的饼图。在图例中,我想要包含百分比值。

我遇到的问题是图例中的颜色与饼图中的颜色不匹配。另外,如果可能的话,我希望百分比值以百分号(%)开头。以下是我的图表到目前为止的显示方式:

enter image description here

1 个答案:

答案 0 :(得分:1)

我在您的代码中看到两个错误:

1)在图例声明中,你有百分号标签,它应该是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/