r - 用日期和两个轴绘制条形图 - R ggplot2
问题描述
请帮助指导绘制情节的正确方法...
我有一个包含一些纪念碑的数据集,以及它们被列为市政遗产的年份
纪念碑 | 年 |
---|---|
一个 | 1990 |
乙 | 1990 |
C | 1993 |
D | 1995 |
乙 | 1996 |
所有的纪念碑都是不同的和独特的,但有一些共同点。
我想用所有年份来可视化xx轴,一个条形图,其中包含每年刻有纪念碑的数量(甚至显示那些没有刻有任何纪念碑的年份以可视化时间间隔)
此外,如果有一个辅助轴,并用刻有纪念碑的累积总和画一条线,那就太棒了。
提前致谢!
解决方案
在 ggplot2 中使用辅助轴要记住的一般情况是(1)您需要自己转换输入数据,以及(2)您需要在辅助轴中指定逆变换。这是一个带有一些虚拟数据的示例,我们仅使用10
.
library(ggplot2)
df <- data.frame(
year = sample(1990:2020, 50, replace = TRUE)
)
scale <- 10 # scaling factor for secondary axis
ggplot(df, aes(year)) +
geom_bar(width = 0.5) +
geom_line(aes(y = after_stat(cumsum(count)/scale)),
stat = "count", colour = "red") +
scale_y_continuous(
sec.axis = sec_axis(~ .x * scale, name = "cumulative count")
)
由reprex 包于 2021-02-03 创建(v1.0.0)
或许还需要指出的是,您可以使用 获得每年的累积计数aes(y = after_stat(cumsum(counts))
。
推荐阅读
- bash - bash psql插入错误127
- docker - "exec: \"scripts/script.sh\": stat scripts/script.sh: 没有这样的文件或目录
- swift - 崩溃 - EXC_BAD_ACCESS KERN_INVALID_ADDRESS 专用 _VariantDictionaryBuffer.nativeUpdateValue(_:forKey:)
- java - 如何处理带有@的JSON-LD
- linux - 启动 couchbase-server.service 失败:单元 couchbase-server.service 被屏蔽
- vue.js - 如何从 vue 中的回调中访问局部组件变量?
- java - 扩展 TextField 以保存一个小数字段并允许小数点后两位数
- stylus - 使用 Stylus 以编程方式创建类
- xpath - 如何通过 XPath 选择每个元素中的第一个匹配项?
- graphql - 名称是在解析器中定义的,但枚举不在架构中