R编程语言具有几个用于创建图表的图形库。饼图以不同颜色的圆形切片的形式表示值。切片带有说明标签,并且每个切片对应的数字也显示在图表中。但是,R文档中不建议使用饼图,并且饼图的特性受到限制。建议在饼图上使用条形图或点图,因为人们能够比长度更准确地测量长度。
饼图是通过pie()函数创建的,该函数以正数作为向量输入。附加参数用于控制标签,颜色,标题等。
pie()函数的语法如下:
pie(X, Labels, Radius, Main, Col, Clockwise)
这里,
# 为图表创建数据。 x <- c(20, 65, 15, 50) labels <- c("India", "America", "Shri Lanka", "Nepal") # 为图表文件命名。 png(file = "Country.jpg") # 绘制图表。 pie(x,labels) # 保存文件。 dev.off()
输出:
饼图具有更多函数,可以通过在pie()函数中添加更多参数来使用。我们可以通过传递main参数来为饼图命名。它将饼图的标题告知pie()函数。除此之外,我们可以通过传递col参数在绘制图表时使用颜色。
让我们看一个示例,以了解这些方法如何创建带有标题(Title)和颜色(Color)的饼图。
链接:https://www.learnfk.comhttps://www.learnfk.com/R/r-pie-charts.html
来源:LearnFk无涯教程网
# 为图表创建数据。 x <- c(20, 65, 15, 50) labels <- c("India", "America", "Shri Lanka", "Nepal") # 为图表文件命名。 png(file = "title_color.jpg") # 绘制图表。 pie(x,labels,main="Country Pie chart",col=rainbow(length(x))) # 保存文件。 dev.off()
输出:
饼图还有两个附加属性,即切片百分比和图例。我们可以用百分比形式显示数据,也可以通过使用legend()函数将图例添加到R中的绘图中。 legend()函数具有以下语法。
legend(x,y=NULL,legend,fill,col,bg)
这里,
# 为图表创建数据。 x <- c(20, 65, 15, 50) labels <- c("India", "America", "Shri Lanka", "Nepal") pie_percent<- round(100*x/sum(x), 1) # 为图表文件命名。 png(file = "per_pie.jpg") # 绘制图表。 pie(x, labels = pie_percent, main = "Country Pie Chart",col = rainbow(length(x))) legend("topright", c("India", "America", "Shri Lanka", "Nepal"), cex = 0.8, fill = rainbow(length(x))) #保存文件。 dev.off()
输出:
在R中,我们还可以创建一个三维饼图。为此,R提供了一个plotrix软件包,其pie3D()函数用于创建引人注目的3D饼图。 pie3D()函数的参数与pie()函数相同。让我们看一个示例,以了解如何借助此函数创建3D饼图。
# 加载plotrix包 library(plotrix) # 为图表创建数据。 x <- c(20, 65, 15, 50,45) labels <- c("India", "America", "Shri Lanka", "Nepal","Bhutan") # 为图表文件命名。 png(file = "3d_pie_chart1.jpg") # 绘制图表。 pie3D(x,labelslabels = labels,explode = 0.1, main = "Country Pie Chart") # 保存文件。 dev.off()
输出:
# 加载plotrix库 library(plotrix) # 为图表创建数据。 x <- c(20, 65, 15, 50,45) labels <- c("India", "America", "Shri Lanka", "Nepal","Bhutan") pie_percent<- round(100*x/sum(x), 1) # 为图表文件命名。 png(file = "three_D_pie.jpg") # 绘制图表。 pie3D(x, labels = pie_percent, main = "Country Pie Chart",col = rainbow(length(x))) legend("topright", c("India", "America", "Shri Lanka", "Nepal","Bhutan"), cex = 0.8, fill = rainbow(length(x))) #保存文件。 dev.off()
输出:
祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)