gpt4 book ai didi

r - R 中 7 个条的条形图中的纹理?

转载 作者:行者123 更新时间:2023-12-03 22:29:59 25 4
gpt4 key购买 nike

X 中的每个值都有 7 个不同的类别。我使用 barplot 来绘制这些类别。这样的图形在彩色打印机中看起来不错,但如果我希望它在黑白中很好怎么办。您可以查看下面的图表。我想要不同颜色的纹理,所以图形在彩色和黑白打印机上看起来不错。

enter image description here

我使用 densities = c(10,30,40,50,100,60,80) 作为 barplot 函数中的密度参数。有没有其他方法可以在条形图中做不同的纹理?

注意:我在 barplot 中尝试了角度值。但是,在这种情况下这不是一个好的解决方案,因为并非所有条形都有高值(即条形的高度)。

最佳答案

根据我的评论,您可能会发现以下内容很有帮助:

# data generation ---------------------------------------------------------
set.seed(1)
mat <- matrix(runif(4*7, min=0, max=10), 7, 4)
rownames(mat) <- 1:7
colnames(mat) <- LETTERS[1:4]


# plotting settings -------------------------------------------------------
ylim <- range(mat)*c(1,1.5)
angle1 <- rep(c(45,45,135), length.out=7)
angle2 <- rep(c(45,135,135), length.out=7)
density1 <- seq(5,35,length.out=7)
density2 <- seq(5,35,length.out=7)
col <- 1 # rainbow(7)


# plot --------------------------------------------------------------------
op <- par(mar=c(3,3,1,1))
barplot(mat, beside=TRUE, ylim=ylim, col=col, angle=angle1, density=density1)
barplot(mat, add=TRUE, beside=TRUE, ylim=ylim, col=col, angle=angle2, density=density2)
legend("top", legend=1:7, ncol=7, fill=TRUE, col=col, angle=angle1, density=density1)
par(bg="transparent")
legend("top", legend=1:7, ncol=7, fill=TRUE, col=col, angle=angle2, density=density2)
par(op)

enter image description here

关于r - R 中 7 个条的条形图中的纹理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23913276/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com