【发布时间】:2014-02-21 11:07:07
【问题描述】:
我有以下数据框,df,我希望为其绘制直方图。
x
1 -28313937
2 -218616099
3 -18406124
4 20307666
5 31985283
6 41429217
7 46488567
8 47690792
9 51127321
10 53168291
11 55247883
12 -49200409
13 33398814
14 36198419
15 42765257
16 45857195
17 43870899
18 50557988
19 49574516
20 52317786
21 50769743
我使用以下代码来绘制直方图,
R_hist <- ggplot(df, aes(x=x)) +
geom_histogram(binwidth=.5, colour="black", fill="white") +
geom_vline(aes(xintercept=mean(x, na.rm=T)), color="violet", linetype="dashed", size=1)
当我尝试调用对象 R_hist 时,我得到一个 错误:无法分配大小为 4.1 Gb 的向量 另外:警告信息: 1:在 seq.default(round_any(range[1], size, floor), round_any(range[2], : 已达到 4021Mb 的总分配:请参阅 help(memory.size)
有人可以告诉我为什么直方图没有像这里应该的那样绘制
谢谢。
【问题讨论】:
-
你能让你的问题重现吗?
-
您正在尝试为
-218616099和55247883之间的每个值以0.5 的增量绘制一个条形图...您想要21 个高度为x的条形图吗? ... FWIW,这是一个包含 5 亿个值的向量,最终太大而无法分配。 -
@RomanLuštrik 在什么意义上可重现?我尝试为图形对象使用不同的名称,但仍然出现相同的错误
-
@Justin 感谢您的评论。是的,确实我想要 21 条高度以 x 表示的条形
-
给我们你用来绘图的数据和代码。以下是有关如何做到这一点的一些提示:stackoverflow.com/questions/5963269/…