You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

R语言从正态分布总体抽样绘制直方图的ggplot运行报错解决问询

问题解决说明

报错根源

你最初的代码报错是因为两个问题:

  1. 创建数据框时未给生成的正态分布序列指定列名,默认生成的列名是rnorm.30..mean...0..sd...2.这类不规范的名称
  2. aes()中直接传入了整个数据框对象sample2,ggplot无法识别要映射到x轴的变量,才会触发类型不匹配的报错。

修正后的完整实现

# 加载绘图包
library(ggplot2)

# 生成30个正态分布观测值,存入数据框并明确指定列名
sample_data <- data.frame(
  value = rnorm(n = 30, mean = 0, sd = 2)
)

# 绘制直方图
ggplot(sample_data, aes(x = value)) +
  geom_histogram(
    binwidth = 1, # 自定义组距,可根据需求调整,避免默认分组警告
    fill = "cornflowerblue",
    color = "black", # 添加柱子边框提升辨识度
    alpha = 0.8
  ) +
  # 自定义图表标注
  labs(
    title = "正态分布抽样结果直方图",
    subtitle = "总体参数:均值=0,标准差=2,样本量n=30",
    x = "观测值",
    y = "频数"
  ) +
  theme_minimal() # 可选:用简洁主题美化

极简写法(不需要额外存储变量的场景)

library(ggplot2)
ggplot(data.frame(x = rnorm(30, 0, 2)), aes(x = x)) +
  geom_histogram(binwidth = 1, fill = "blue", color = "black")

内容的提问来源于stack exchange,提问作者Elasso

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 18:54:02