R语言绘制五角星并调整范围到2.2-15
R语言绘制五角星并调整范围到2.2-15
本文介绍如何使用R语言绘制五角星,并通过代码调整五角星的分布范围,使其位于x, y坐标轴的2.2到15之间。
代码示例
r <- sin(0.1*pi) / cos(.2*pi)#五角星短轴的长度
x <- matrix()
y <- matrix()
for ( i in 1:10){
if( i %% 2 == 1)
{
k = (i+1)/2
x[i] <- cos((0.5 + k * .4) * pi)
y[i] <- sin((0.5 + k * .4) * pi)
}
else if(i %% 2 == 0)
{
k = i/2
x[i] <- (r * cos((0.7 + k * .4 ) *pi))
y[i] <- (r*sin((0.7 + k * .4 ) *pi))
}
}
x <- (x * 6.4) + 8.8 # 将x的范围由[-1,1]变为[2.2,15]
y <- (y * 6.4) + 8.8 # 将y的范围由[-1,1]变为[2.2,15]
plot(x, y, xlab = '', ylab = '',
xlim = c(2.2, 15),
ylim = c(2.2, 15),
axes = T, type = 'o')
polygon(x, y, col = 'transparent', border = 'black', lwd = 1.5) #为五角星填充颜色
text(x, y, labels= LETTERS[1:10], pos=1)
代码解释
- 计算五角星短轴长度:
r <- sin(0.1pi) / cos(.2pi)
2. **创建x和y坐标矩阵:**
```r
x <- matrix()
y <- matrix()
- 循环计算五角星顶点坐标:
for ( i in 1:10){ if( i %% 2 == 1) { k = (i+1)/2 x[i] <- cos((0.5 + k * .4) * pi) y[i] <- sin((0.5 + k * .4) * pi) }
else if(i %% 2 == 0) { k = i/2 x[i] <- (r * cos((0.7 + k * .4 ) pi)) y[i] <- (rsin((0.7 + k * .4 ) *pi)) } }
4. **调整x和y的范围:**
```r
x <- (x * 6.4) + 8.8 # 将x的范围由[-1,1]变为[2.2,15]
y <- (y * 6.4) + 8.8 # 将y的范围由[-1,1]变为[2.2,15]
- 绘制五角星:
plot(x, y, xlab = '', ylab = '', xlim = c(2.2, 15), ylim = c(2.2, 15), axes = T, type = 'o') polygon(x, y, col = 'transparent', border = 'black', lwd = 1.5) #为五角星填充颜色 text(x, y, labels= LETTERS[1:10], pos=1)
通过以上代码,我们成功绘制了一个五角星,并将其分布范围调整到x, y坐标轴的2.2到15之间。
原文地址: https://www.cveoy.top/t/topic/lQcy 著作权归作者所有。请勿转载和采集!