r - R - 如何绘制具有特定 y 轴(而不仅仅是频率)的直方图?
问题描述
我正在寻找一个直方图,它在 x 轴上绘制排名(1-400ish 值),在 y 轴上绘制每 1000 人的频率。有没有办法用 hist() 函数做到这一点?目前我正在使用 plot.default() 像这样:
plot.default(frequencyData$Deprivation.rank, frequencyData$Prescription.per.1000.people, xlab =
"Deprivation Rank", ylab = "per 1000", main=graph_title, xlim=NULL, ylim=NULL, type="h")
完成此操作后,我想计算平均值和标准差并将它们绘制为我得到的图表上的一条线,目前(使用 plot.deafult)看起来像这样
任何人都可以提供任何帮助?
解决方案
您没有提供任何数据进行测试,但我想您可以毫无问题地做到这一点。只需使用该hist()
功能。
这是您可以?hist
在 R 控制台中键入的文档:
直方图 描述
通用函数 hist 计算给定数据值的直方图。如果,则“直方图”类的结果对象在返回之前
plot = TRUE
由 , 绘制。plot.histogram
Usage hist(x, ...)
默认 S3 方法:
hist(x, breaks = "Sturges", freq = NULL, probability = !freq, include.lowest = TRUE, right = TRUE, density = NULL, angle = 45, col = NULL, border = NULL, main = paste("Histogram of" , xname), xlim = range(breaks), ylim = NULL, xlab = xname, ylab, axes = TRUE, plot = TRUE, labels = FALSE, nclass = NULL, warn.unused = TRUE, ...)
因此,您可以尝试像这样更改绘图功能:
hist(
frequencyData$Deprivation.rank,
frequencyData$Prescription.per.1000.people,
xlab = "Deprivation Rank",
ylab = "per 1000",
main = graph_title,
xlim = NULL,
ylim = NULL
)
ggplot 替代品
您可以使用该库获得更好看的图形ggplot
,例如以下示例:
library(ggplot2)
ggplot(frequencyData, aes(Deprivation.rank, Prescription.per.1000.people)) +
geom_histogram() +
xlab("Deprivation Rank") +
ylab("per 1000") +
ggtitle(graph_title)
希望这可以帮助。
推荐阅读
- c# - 从 IoT Azure Hub 获取所有设备
- python - 如何将变量从 Django 视图传递到模板
- javascript - 如何在 render() 中的 JSX 组件树中定义的组件上调用 React forceUpdate()
- javascript - 在 java 上的 get() 之前在 Selenium WebDriver 上执行 javaScript
- kubernetes - Kubernetes 中对 Service Mesh 的需求
- python - 如何检测返回图片的http请求(在html代码中)
- python - Python:在字符串中查找单词
- android - 无法在 Kotlin 中创建类 ViewModel 的实例
- r - 将数据框列表中的值格式化为百分比
- ios - 应用程序进入后台模式后无法立即获得响应