r - R:如何在条形图中显示范围?
问题描述
尝试生成与 excel 相同的条形图,但在 R 中可以吗?想要显示每周订单的总数。按用户的开始和结束日期计算。
User Due_date Status
a 02-10-2017 Complete
b 02-02-2017 Ordered
a 02-08-2017 Complete
c 02-08-2017 Complete
a 02-08-2017 Ordered
s 02-06-2017 Complete
c 02-06-2017 Complete
s 02-06-2017 Ordered
b 02-06-2017 Ordered
c 02-11-2017 Complete
a 02-11-2017 Ordered
s 02-11-2017 Ordered
c 02-01-2017 Complete
s 02-01-2017 Ordered
b 02-01-2017 Complete
b 02-10-2017 Complete
尝试生成报告但不显示在excel中显示的范围,请检查代码和随附的屏幕截图。
library(lubridate)
Data$Week_Due = (ceiling_date(Data$Due.Date, "week") + ifelse(weekdays(Data$Due.Date) %in% c("Saturday", "Sunday"), 5,-2))
library(rpivotTable)
rpivotTable(Data, aggregatorName = "Count", rows = "User", cols = c("Week_Due","User","Status"), width = "100%", height = "500px",rendererName = "Bar Chart")
解决方案
好的 - 这是一个更详细的示例,应该更接近您想要实现的目标:要修改 x 轴上的标签以显示日期范围,您需要放入一个简单的函数。而且,我使用breaks
它date_breaks
是为了将刻度线或多或少地移动到直方图条形下方的中间。
ggplot(Data, aes(x = Due_date)) + geom_histogram(binwidth = 7) +
scale_x_date(breaks = seq(min(Data$Due_date), max(Data$Due_date), by = 7),
labels = function(x) paste0(format(x, "%d-%m-%Y"), ", ", format(x+7, "%d-%m-%Y"))) +
theme(axis.text.x = element_text(angle = 45, hjust = 1))
推荐阅读
- bash - Bash:从单个文件中单独处理的 json 获取多个值
- elasticsearch - 如何让 ES 支持混合类型的字段?
- python - 如何在keras中使用可学习的权重进行矩阵乘法?
- r - 如何减少大相关矩阵
- excel - 计算产品成本的Excel公式
- c++ - 我正在研究使用 std::variant 的异构列表。有没有办法每次都用一组自定义的 std::variant 类型来初始化它?
- virtual-machine - 为什么我在进行路由跟踪时无法访问我的 ip?
- php - 替换 php 包含页面的文本词
- sql - 匹配时插入合并
- azure - ResourceID 函数没有生成正确的资源 ID?