R语言图形上下翻转:修改代码实现五角星翻转

本文将介绍如何使用R语言修改代码,将一个五角星图形上下翻转。

原代码

r = 2.568

x <- matrix()
y <- matrix()

for ( i in 1:10){
  
if( i %% 2 == 1)
  {
  k = (i+1)/2
  x[i] <- cos((0.5 + k * 2/5) * pi)
  y[i] <- sin((0.5 + k * 2/5) * pi)
  }
  
else if(i %% 2 == 0)
  {
  k = i/2
  x[i] <- (r * cos((0.7 + k * 2/5 ) *pi))
  y[i] <- (r * sin((0.7 + k * 2/5 ) *pi))
  }
}
# x <- (x * 6) + 9 # 将x的范围由[-1,1]变为[2.2,15]
# y <- (y * 6) + 9 # 将y的范围由[-1,1]变为[2.2,15]
# par(bg = "blue")
plot(x, y, xlab = '', ylab = '', 
     # xlim = c(0, 15),
     # ylim = c(0, 15),
     axes = T, type = "o")
polygon(x, y, col = "transparent", border = "black", lwd = 1.5) #为五角星填充颜色


text(x, y, labels= c("C", "B", "A", "J", "I", "H", "G", "F", "E", "D"), pos = 1)

修改后的代码

要实现图形的上下翻转,只需要将y坐标取反即可。修改后的代码如下:

r = 2.568

x <- matrix()
y <- matrix()

for ( i in 1:10){
  
if( i %% 2 == 1)
  {
  k = (i+1)/2
  x[i] <- cos((0.5 + k * 2/5) * pi)
  y[i] <- -sin((0.5 + k * 2/5) * pi) # 修改处
  }
  
else if(i %% 2 == 0)
  {
  k = i/2
  x[i] <- (r * cos((0.7 + k * 2/5 ) *pi))
  y[i] <- -(r * sin((0.7 + k * 2/5 ) *pi)) # 修改处
  }
}
# x <- (x * 6) + 9 # 将x的范围由[-1,1]变为[2.2,15]
# y <- (y * 6) + 9 # 将y的范围由[-1,1]变为[2.2,15]
# par(bg = "blue")
plot(x, y, xlab = '', ylab = '', 
     # xlim = c(0, 15),
     # ylim = c(0, 15),
     axes = T, type = "o")
polygon(x, y, col = "transparent", border = "black", lwd = 1.5) #为五角星填充颜色


text(x, y, labels= c("C", "B", "A", "J", "I", "H", "G", "F", "E", "D"), pos = 1)

修改位置

修改位置在第12行和第18行,将计算y坐标的代码中的正号改为负号即可。

总结

通过对代码的简单修改,我们成功实现了五角星图形的上下翻转。希望本文能帮助您更好地理解R语言图形操作的相关知识。

R语言图形上下翻转:修改代码实现五角星翻转

原文地址: https://www.cveoy.top/t/topic/lQfU 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录