如何在R中绘制n=100/200/300/400时h1t函数的同图对比?
在同一张图中绘制多组n值的h1t函数曲线
完整代码实现
假设你已经修复了h1t函数的向量运算回收警告问题,以下是将n=100、200、300、400的曲线绘制在同一图中的代码:
# 已修复回收警告的h1t函数(替换为你的实际函数实现) h1t <- function(x, n) { # 示例函数,替换为你的h1t逻辑 x^(1/n) } # 生成x轴的密集取值点 x_vals <- seq(0, 1, length.out = 1000) # 定义要绘制的n值列表和对应颜色 n_list <- c(100, 200, 300, 400) line_colors <- c("red", "blue", "green", "purple") # 初始化绘图区域,先绘制第一条曲线 plot(x_vals, h1t(x_vals, n = n_list[1]), type = "l", col = line_colors[1], xlab = "x", ylab = "h1t(x)", main = "h1t函数曲线(不同n值对比)", lwd = 2) # 循环添加剩余n值的曲线 for (i in 2:length(n_list)) { lines(x_vals, h1t(x_vals, n = n_list[i]), col = line_colors[i], lwd = 2) } # 添加图例区分不同曲线 legend("topright", legend = paste0("n=", n_list), col = line_colors, lwd = 2)
关键说明
- 先通过
plot()创建基础绘图框架,设置坐标轴标签、标题和第一条曲线的样式。 - 使用
lines()函数在已有绘图上叠加后续曲线,通过不同颜色区分n值。 - 循环写法可以避免重复代码,适合扩展更多n值的场景。
- 确保
h1t函数内部采用向量化运算(之前已修复的回收警告问题),保证传入向量x_vals时能正确计算对应函数值,无警告。
内容的提问来源于stack exchange,提问作者oliver
相关产品推荐
相关产品推荐

