使用“line”作为geom类型将不会绘制

时间:2012-01-23 20:15:36

标签: r ggplot2

我有一个具有以下特征的data.frame:

+-----------------------------------------+
|         earning   budget    ts    total |
+-----------------------------------------+
| 1            14      3 2012-01-18    11 |
| 2            15      3 2012-01-19    23 |
| 3            22      4 2012-01-20    42 |
| 4            43      4 2012-01-21    82 |
| 5            19      5 2012-01-22    98 |
| 6            24      5 2012-01-23   119 |
+-----------------------------------------+

我正在使用以下代码获取ggplot

qplot(ts, total, data=res, geom="histogram")

但是当我运行以下代码时,我得到一个没有线的图形?

qplot(ts, total, data=res, geom="line")

我试过了

plot(res)
,这很好。

知道为什么“线”图不理解我的情节?

2 个答案:

答案 0 :(得分:3)

什么数据类型是ts? (str(YourDataFame$ts)给出了什么?)如果是字符或因素,则需要在创建一行时向group=1添加aes(),否则它只会为每个组绘制一行,并且每个字符/因子定义一个不同的组(因此每个x值是一个单独的组)。

答案 1 :(得分:0)

不确定究竟是什么,但如果我在你提供的表格中假设你的ts列,那么qplot(... histogram)不应该在没有添加stat ='identity'的情况下工作。

很高兴帮忙......只是困惑!

其他人:

> dput(res)
structure(list(earning = c(14, 15, 22, 43, 19, 24), budget = c(3, 
3, 4, 4, 5, 5), ts = structure(c(15357, 15358, 15359, 15360, 
15361, 15362), class = "Date"), total = c(11, 23, 42, 82, 98, 
119)), .Names = c("earning", "budget", "ts", "total"), row.names = c(NA, 
-6L), class = "data.frame")