开发手册 欢迎您!
软件开发者资料库

R - 饼图

R Pie Charts - 从简单和简单的步骤学习R编程语言,从基本到高级概念,包括R安装,语言基础,语法,文字,数据类型,变量,函数,循环,决策,模块,数组,列表,矢量,数学,矩阵,统计,图形,Excel数据,csv数据,概述,环境设置,运算符,字符串,因子,数据框,包,数据整形,二进制文件,XML文件,Json文件,Web数据,数据库,饼图图表,条形图,箱线图,直方图,线图,散点图,平均值,中位数和模式,线性回归,多元回归,Logistic回归,正态分布,二项分布,泊松回归,协方差分析,时间序列分析,非线性最小二乘,决策树,随机森林,生存分析,卡方检验。

R编程语言有许多库来创建图表和图形.饼图是将值表示为具有不同颜色的圆的切片.切片被标记,每个切片对应的数字也在图表中显示.

在R中,饼图是使用 pie()函数创建的.将正数作为向量输入.附加参数用于控制标签,颜色,标题等.

语法

使用R创建饼图的基本语法是 :

pie(x, labels, radius, main, col, clockwise)

以下是所用参数的说明及减号;

  • x 是包含饼图中使用的数值的向量.

  • 标签用于说明切片.

  • 半径表示饼图圆的半径.(值介于 :  1和 +  1之间).

  • main 表示图表的标题.

  • col 表示调色板.

  • 顺时针是一个逻辑值,表示切片是顺时针还是逆时针绘制.

示例

使用j创建一个非常简单的饼图输入矢量和标签.下面的脚本将在当前的R工作目录中创建并保存饼图.

# Create data for the graph.x <- c(21, 62, 10, 53)labels <- c("London", "New York", "Singapore", "Mumbai")# Give the chart file a name.png(file = "city.jpg")# Plot the chart.pie(x,labels)# Save the file.dev.off()

饼图标题和颜色

我们可以通过向函数添加更多参数来扩展图表的功能.我们将使用参数 main 为图表添加标题,另一个参数是 col ,它将在绘制图表时使用彩虹色托盘.托盘的长度应与图表的值相同.因此我们使用length(x).

示例

下面的脚本将在当前的R工作目录中创建并保存饼图.

# Create data for the graph.x <- c(21, 62, 10, 53)labels <- c("London", "New York", "Singapore", "Mumbai")# Give the chart file a name.png(file = "city_title_colours.jpg")# Plot the chart with title and rainbow color pallet.pie(x, labels, main = "City pie chart", col = rainbow(length(x)))# Save the file.dev.off()

当我们执行上面的代码时,它产生以下结果 :

带标题和颜色的饼图

切片百分比和图表图例

我们可以通过创建其他图表变量来添加切片百分比和图表图例.

# Create data for the graph.x <-  c(21, 62, 10,53)labels <-  c("London","New York","Singapore","Mumbai")piepercent<- round(100*x/sum(x), 1)# Give the chart file a name.png(file = "city_percentage_legends.jpg")# Plot the chart.pie(x, labels = piepercent, main = "City pie chart",col = rainbow(length(x)))legend("topright", c("London","New York","Singapore","Mumbai"), cex = 0.8,   fill = rainbow(length(x)))# Save the file.dev.off()

当我们执行上面的代码时,它产生以下结果 :

带有百分比和标签的饼图

3D饼图

可以使用其他包绘制具有3个维度的饼图.软件包 plotrix 有一个名为 pie3D()的函数用于此.

# Get the library.library(plotrix)# Create data for the graph.x <-  c(21, 62, 10,53)lbl <-  c("London","New York","Singapore","Mumbai")# Give the chart file a name.png(file = "3d_pie_chart.jpg")# Plot the chart.pie3D(x,labels = lbl,explode = 0.1, main = "Pie Chart of Countries ")# Save the file.dev.off()

当我们执行上面的代码时,它产生以下结果 :

3D饼图