gpt4 book ai didi

r - 修改 R 中饼图轮廓的宽度——pie() 的 lwd 参数等效于什么?

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

我正在使用base R 绘图函数来生成饼图,并且我想更改每个饼图段轮廓的线条粗细。 ?pie 似乎表明我可以添加可选的图形参数,但添加 lwd= 似乎不起作用。任何人都知道我如何能够做到这一点。我还不擅长在 ggplot 中生成饼图,并且想坚持使用 base R 绘图(如果可能)。

library(RColorBrewer)

x1 <- data.frame(V1 = c(200, 100)) ## generate data

row.names(x1) <- c("A", "B")

x1$pct <- round((x1$V1/sum(x1$V1))*100, 1)

lbls1 <- paste(row.names(x1), "-(",x1$pct, '%)', sep='') ## add some informative stuff

pie(x1$V1, labels=lbls1, col=tail(brewer.pal(3, 'PuBu'), n=2),
main=paste('My 3.1415'), cex=1.1, lwd= 3)

注意 lwd= 不会像其他基本绘图中那样增加线条粗细。

有人有任何线索吗?

最佳答案

pie中对polygonlines的调用不会传递...lwd

...
polygon(c(P$x, 0), c(P$y, 0), density = density[i], angle = angle[i],
border = border[i], col = col[i], lty = lty[i])
P <- t2xy(mean(x[i + 0:1]))
lab <- as.character(labels[i])
if (!is.na(lab) && nzchar(lab)) {
lines(c(1, 1.05) * P$x, c(1, 1.05) * P$y)
....

您可以通过在调用 pie 之前在外部设置 par(lwd = 2) (或其他内容)来解决此问题

# save original settings
opar <- par(no.readonly = TRUE)
par(lwd = 2)
pie(x1$V1, labels=lbls1, col=tail(brewer.pal(3, 'PuBu'), n=2),
main=paste('My 3.1415'), cex=1.1)

enter image description here

par(lwd = 3)

enter image description here

# reset to original
par(opar)

关于r - 修改 R 中饼图轮廓的宽度——pie() 的 lwd 参数等效于什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15236347/

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