使用ggplot制作直方图

问题描述 投票:0回答:1

我想用ggplot在x轴上绘制一个身高,体重和年龄的简单直方图

首先,我建立不同的度量并制作数据框:

age <- seq(from=10, to=21)
age

height <- c(147,152,157,160,163,172,177,180,183,184,185,185)
height

weight <- c(47,54,61,63,65,66,69,72,79,81,82,83)
weight

df <- data.frame(age,height,weight, stringsAsFactors = F)
df$age <- as.numeric(df$age)


df$class[df$age <14] = "child"
df$class[df$age <=17 & df$age>=14] = "teen"
df$class[df$age >17] = "adult"
df

然后我做一个简单的直方图:

library(ggplot2)

ggplot(df, aes(x=age, y=height))+geom_histogram(fill="white",color="black",stat="identity",bins=12)

问题是直方图一直像条形图一样显示,变量年龄看起来像一个离散变量,而不是连续变量,并且没有为每个条形指定年份。

“

而且我也收到此错误消息:

警告消息:“忽略未知参数:binwidth,bins,pad”

[我尝试使用scale_x_continuousscale_y_continuous,不使用它们,仅使用scale_x_continuous,我检查了变量年龄是否为数字,并且仍然存在相同的问题。不确定我可能错过了一件非常简单的事情,但是我将非常感谢您的帮助。

提前感谢

我想使用ggplot在x轴上绘制一个身高,体重和年龄的简单直方图,首先是年龄,我建立了不同的度量并制作了数据框:age

r ggplot2 bar-chart histogram
1个回答
0
投票

如果要用age表示height的直方图,则必须将weight = height作为geom_histogram美观而不是y坐标传递。我还使用cut定义了(不需要的)class向量,从而以一种更简单的方式重新设置了数据集。

© www.soinside.com 2019 - 2024. All rights reserved.