我卡住了ggplot的值在y轴上的图形,看不到问题。
代表: 这是我的数据帧的头部输出,然后是dput和代码。
> head(my_df)
Date Asset Value pos_neg qtr_date yr_date
1 2018-09-01 real_gdp_yoy 3.2 positive 2018-07-01 2018-01-01
2 2018-09-02 real_gdp_yoy 3.2 positive 2018-07-01 2018-01-01
3 2018-09-03 real_gdp_yoy 3.2 positive 2018-07-01 2018-01-01
4 2018-09-04 real_gdp_yoy 3.2 positive 2018-07-01 2018-01-01
5 2018-09-05 real_gdp_yoy 3.2 positive 2018-07-01 2018-01-01
6 2018-09-06 real_gdp_yoy 3.2 positive 2018-07-01 2018-01-01
问题:我希望图形中的y数据(值)为3.2、3.1和2.5。但是,ggplot看起来好像在绘制不同的数字。这可能是一个简单的错误,但我很想念它。
my_df <-
structure(list(Date = structure(c(17775, 17776, 17777, 17778, 17779, 17780, 17781, 17782, 17783,
17784, 17785, 17786, 17787, 17788, 17789, 17790, 17791, 17792,
17793, 17794, 17795, 17796, 17797, 17798, 17799, 17800, 17801,
17802, 17803, 17804, 17805, 17806, 17807, 17808, 17809, 17810,
17811, 17812, 17813, 17814, 17815, 17816, 17817, 17818, 17819,
17820, 17821, 17822, 17823, 17824, 17825, 17826, 17827, 17828,
17829, 17830, 17831, 17832, 17833, 17834, 17835, 17836, 17837,
17838, 17839, 17840, 17841, 17842, 17843, 17844, 17845, 17846,
17847, 17848, 17849, 17850, 17851, 17852, 17853, 17854, 17855,
17856, 17857, 17858, 17859, 17860, 17861, 17862, 17863, 17864,
17865, 17866, 17867, 17868, 17869, 17870, 17871, 17872, 17873,
17874, 17875, 17876, 17877, 17878, 17879, 17880, 17881, 17882,
17883, 17884, 17885, 17886, 17887, 17888, 17889, 17890, 17891,
17892, 17893, 17894, 17895, 17896, 17897), class = "Date"),
Asset = c("real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy",
"real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy",
"real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy",
"real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy",
"real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy",
"real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy",
"real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy",
"real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy",
"real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy",
"real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy",
"real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy",
"real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy",
"real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy",
"real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy",
"real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy",
"real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy",
"real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy",
"real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy",
"real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy",
"real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy",
"real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy",
"real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy",
"real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy",
"real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy",
"real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy",
"real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy",
"real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy",
"real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy",
"real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy",
"real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy",
"real_gdp_yoy", "real_gdp_yoy", "real_gdp_yoy"),
Value = c(3.2, 3.2, 3.2, 3.2, 3.2, 3.2, 3.2, 3.2, 3.2, 3.2, 3.2, 3.2, 3.2,
3.2, 3.2, 3.2, 3.2, 3.2, 3.2, 3.2, 3.2, 3.2, 3.2, 3.2, 3.2, 3.2,
3.2, 3.2, 3.2, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1,
3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1,
3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1,
3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1,
3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1,
3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1,
3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1, 3.1,
3.1, 3.1, 3.1, 3.1, 2.5, 2.5),
pos_neg = c("positive", "positive", "positive", "positive", "positive",
"positive", "positive", "positive", "positive", "positive",
"positive", "positive", "positive", "positive", "positive",
"positive", "positive", "positive", "positive", "positive",
"positive", "positive", "positive", "positive", "positive",
"positive", "positive", "positive", "positive", "positive",
"positive", "positive", "positive", "positive", "positive",
"positive", "positive", "positive", "positive", "positive",
"positive", "positive", "positive", "positive", "positive",
"positive", "positive", "positive", "positive", "positive",
"positive", "positive", "positive", "positive", "positive",
"positive", "positive", "positive", "positive", "positive",
"positive", "positive", "positive", "positive", "positive",
"positive", "positive", "positive", "positive", "positive",
"positive", "positive", "positive", "positive", "positive",
"positive", "positive", "positive", "positive", "positive",
"positive", "positive", "positive", "positive", "positive",
"positive", "positive", "positive", "positive", "positive",
"positive", "positive", "positive", "positive", "positive",
"positive", "positive", "positive", "positive", "positive",
"positive", "positive", "positive", "positive", "positive",
"positive", "positive", "positive", "positive", "positive",
"positive", "positive", "positive", "positive", "positive",
"positive", "positive", "positive", "positive", "positive",
"positive", "positive", "positive"),
qtr_date = structure(c(17713, 17713, 17713, 17713, 17713, 17713, 17713,
17713, 17713, 17713, 17713, 17713, 17713, 17713,
17713, 17713, 17713, 17713, 17713, 17713, 17713,
17713, 17713, 17713, 17713, 17713, 17713, 17713,
17713, 17713, 17805, 17805, 17805, 17805, 17805,
17805, 17805, 17805, 17805, 17805, 17805, 17805,
17805, 17805, 17805, 17805, 17805, 17805, 17805,
17805, 17805, 17805, 17805, 17805, 17805, 17805,
17805, 17805, 17805, 17805, 17805, 17805, 17805,
17805, 17805, 17805, 17805, 17805, 17805, 17805,
17805, 17805, 17805, 17805, 17805, 17805, 17805,
17805, 17805, 17805, 17805, 17805, 17805, 17805,
17805, 17805, 17805, 17805, 17805, 17805, 17805,
17805, 17805, 17805, 17805, 17805, 17805, 17805,
17805, 17805, 17805, 17805, 17805, 17805, 17805,
17805, 17805, 17805, 17805, 17805, 17805, 17805,
17805, 17805, 17805, 17805, 17805, 17805, 17805,
17805, 17805, 17805, 17897), class = "Date"),
yr_date = structure(c(17532, 17532, 17532, 17532, 17532, 17532, 17532,
17532, 17532, 17532, 17532, 17532, 17532, 17532,
17532, 17532, 17532, 17532, 17532, 17532, 17532,
17532, 17532, 17532, 17532, 17532, 17532, 17532,
17532, 17532, 17532, 17532, 17532, 17532, 17532,
17532, 17532, 17532, 17532, 17532, 17532, 17532,
17532, 17532, 17532, 17532, 17532, 17532, 17532,
17532, 17532, 17532, 17532, 17532, 17532, 17532,
17532, 17532, 17532, 17532, 17532, 17532, 17532,
17532, 17532, 17532, 17532, 17532, 17532, 17532,
17532, 17532, 17532, 17532, 17532, 17532, 17532,
17532, 17532, 17532, 17532, 17532, 17532, 17532,
17532, 17532, 17532, 17532, 17532, 17532, 17532,
17532, 17532, 17532, 17532, 17532, 17532, 17532,
17532, 17532, 17532, 17532, 17532, 17532, 17532,
17532, 17532, 17532, 17532, 17532, 17532, 17532,
17532, 17532, 17532, 17532, 17532, 17532, 17532,
17532, 17532, 17532, 17897), class = "Date")),
row.names = c(NA, -123L), class = "data.frame")
# Color bars based on postive or negative values
mycolors <- c("positive" = "seagreen4", "negative" = "firebrick4")
# Plot
p <- ggplot(my_df, aes(x = qtr_date, y = Value)) +
geom_col(aes(fill = pos_neg), alpha = 0.7) +
scale_fill_manual(values = mycolors) +
theme(legend.position = "none")
p
答案 0 :(得分:0)
您在每个季度日期内都有重复的值。该图显示了按季度计的价值总和。
library(tidyverse)
my_df %>%
group_by(qtr_date) %>%
summarize(sum(Value))
在绘制数据之前,应将数据汇总到四分之一水平。