gpt4 book ai didi

r - 使用 ggplot2 的整数值绘制阿基米德螺线

转载 作者:行者123 更新时间:2023-12-01 09:49:20 25 4
gpt4 key购买 nike

如何在 R 中绘制漩涡?我正在尝试绘制数字列表 1:100并且每第 7 个数字分配一个因子 '1' 所有其他的只是 '0' 。我还有一个 TRUE 或 FALSE 的向量。我如何绘制这些数字的漩涡并突出显示每七个数字?试着看看我是否可以收紧或松开漩涡 (theta) 以对齐第 7 个数字。以下代码我用来创建数据。我使用了两个不同的函数只是为了看看哪个向量最有效。逻辑向量或“1”或“0”的向量。

returnint  <- function( x ) { 
if ( x == TRUE) {
return (1)
} else {
return (0)
}
}

isseven <- function( x ) {
if (x %% 7) {
return (0) # FALSE
} else {
return (1) # TRUE
}
}

fo = seq(1, 100)
fo.sev = NULL # factors
fo.int = NULL # as int 0 = FALSE , 1 = TRUE

for (i in 1:length(fo)) {
fo.sev[i] = as.logical(isseven(i))
fo.int[i] = returnint(fo.sev[i])
}


df <- data.frame(fo,fo.int,as.factor(fo.sev))
names(df) <- c("x","intx","seven")
df

最佳答案

(我承认回答了标题中的请求,但不理解您其余文本的请求,尽管我后来进行了猜测。)只需使用一对参数方程设置数据:

x = t*cos(t); y = t*sin(t)

您需要足够精细地实例化 t ... 如果您的目的是平滑曲线:

 t <- seq(0, 10, by=0.01)
x = t*cos(t); y = t*sin(t)
ggplot(data.frame(x,y), aes(x=x,y=y))+geom_path()

enter image description here

这是对绘制整数所要求的内容的猜测;

png()
print( ggplot( df, aes(x=x*cos(x), y=x*sin(x))) +
geom_label(data=df, aes(label=x, color=intx, size=intx + 1) ) +
coord_equal() )
dev.off()

enter image description here

标签框似乎确实有最小尺寸,因为即使它们的尺寸 为零,它们也显得可见。我确实用 label.padding = unit(0.05, "lines")

得到了更小的“标签框”

关于r - 使用 ggplot2 的整数值绘制阿基米德螺线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41391271/

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