R语言中barplot函数绘图实现x轴标签的倾斜显示
Posted 小鲨鱼2018
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了R语言中barplot函数绘图实现x轴标签的倾斜显示相关的知识,希望对你有一定的参考价值。
001、代码
dat <- c(3, 8, 2, 9, 4) k <- barplot(dat, axes = FALSE, ylim = c(-4, 10) ,names.arg = FALSE) axis(2, at = seq(0, 10, 2)) label <- paste0("label", 1:5) text(x = k, y = -1.5, labels = label, srt = 45)
绘图效果:
参考:http://www.360doc.com/content/17/0912/17/46931810_686548232.shtml
R语言作图之一
介绍
本文主要介绍R语言当中的几种基本的绘图函数。
条形图
条形图使用的函数是barplot(),详细的描述如下:
barplot(x, main, xlab, ylab, names.arg, col, ...)
x为需要展示的数据,可以是向量或矩阵;
main为图片的标题;
xlab为x轴的标题;
ylab为y轴的标题;
names.arg为每个bar的标签;
col为bar的颜色;
例子:
colors <- c("green", "orange", "brown")
months <- c("Mar", "Apr", "May", "Jun", "Jul")
regions <- c("East", "West", "North")
Values <- matrix(c(2,9,3,11,9,4,8,7,3,12,5,2,8,10,11),nrow = 3,ncol = 5,byrow = TRUE)
pdf(file="20200711_Demo_1.pdf")
barplot(Values,
main="Total Revenue",
names.arg=months,
xlab="Month",
ylab="Revenue",
col=colors)
legend("topleft", regions, cex=1.5, fill=colors)
dev.off()
箱型图
箱型图使用的函数是boxplot(),详细的描述如下:
boxplot(fomular, data, xlab, ylab, names, col, notch, varwidth, ...)
fomular为需要展示的变量;
data为数据帧;
names为box的标签;
notch为布尔型,当为TRUE时,表示为box添加凹形;
varwidth为布尔型,当为TRUE时,会根据每个组内被试量的多少调整box的宽度;
例子:
# 导入R内置的数据
input <- mtcars[,c('mpg','cyl')]
pdf("20200711_Demo_2_2.pdf")
boxplot(
mpg~cyl,
data=input,
xlab="Number of Cylinders",
ylab="Miles Per Gallon",
main="Mileage Data",
names=c("High", "Medium", "Low"),
notch=TRUE,
varwidth=TRUE
)
dev.off()
直方图
直方图使用的函数是hist(),详细的描述如下:
hist(x, xlab, ylab, color, border, xlim, ylim, ...)
border表示柱子的边框颜色;
xlim表示x轴的取值范围;
ylim表示y轴的取值范围;
例子:
v <- c(9,13,21,8,36,22,12,41,31,33,19)
pdf("20200711_Demo_3.pdf")
hist(
v,
xlab="Weight",
col="blue",
border="black",
xlim=c(0, 50),
ylim=c(0, 5)
)
dev.off()
折线图
折线图使用的函数是plot(),具体描述如下:
plot(x, type, main, xlab, ylab, col, ...)
type表示折线的类型,有三种取值("p":绘制点,"|":绘制线,"o":绘制点和线)
如果需要在同一个图中绘制多条折线,需要使用lines(),参数与plot类似。
例子:
v <- c(7,12,28,3,41)
t <- c(14,7,6,19,3)
pdf(file="20200711_Demo_4.pdf")
plot(
v,
type = "o",
col = "red",
xlab = "Month",
ylab = "Rain fall",
main = "Rain fall chart"
)
lines(
t,
type = "o",
col = "blue"
)
dev.off()
散点图
散点图使用的函数也是plot(),区别在于绘制散点图时,需要两个向量。
input <- mtcars[,c('wt','mpg')]
pdf(file = "20200711_Demo_6.pdf")
plot(
x = input$wt,
y = input$mpg,
xlab = "Weight",
ylab = "Milage",
xlim = c(2.5,5),
ylim = c(15,30),
main = "Weight vs Milage"
)
dev.off()
饼状图
饼状图使用的函数是pie(),具体描述如下:
pie(x, labels, main, col, radius, ...)
labels为每个色块的标签;
radius为饼图的半径;
例子:
x <- c(21, 62, 10,53)
labels <- c("London","New York","Singapore","Mumbai")
piepercent<- round(100*x/sum(x), 1)
pdf(file = "20200711_Demo_5.pdf")
pie(
x,
labels = piepercent,
main = "City pie chart",
col = rainbow(length(x)),
radius=0.3
)
legend(
"topright",
c("London","New York","Singapore","Mumbai"),
cex = 0.8,
fill = rainbow(length(x))
)
dev.off()
3D饼图需要使用软件包plotrix有一个名为pie3D()的函数。
参考
[1] https://www.w3cschool.cn/r
以上是关于R语言中barplot函数绘图实现x轴标签的倾斜显示的主要内容,如果未能解决你的问题,请参考以下文章