R中的负值geom_col()低于0
我用R中的负值geom_col()低于0,r,ggplot2,R,Ggplot2,我用ggplot创建了一个绘图,但有些数据条和列的值为负值,低于0,这对我来说很奇怪。如何修复它(列的值不应更改)?我试图在绘图主体中使用limits=,但它改变了列的值。 谢谢大家! div = 1000 sales_plot <- ggplot(sales, aes(week, net/(div*div))) + geom_col() + labs(x = "", y = "Net Value, RUB", title = "S
ggplot
创建了一个绘图,但有些数据条和列的值为负值,低于0,这对我来说很奇怪。如何修复它(列的值不应更改)?我试图在绘图主体中使用limits=
,但它改变了列的值。
谢谢大家!
div = 1000
sales_plot <- ggplot(sales, aes(week, net/(div*div))) +
geom_col() +
labs(x = "", y = "Net Value, RUB", title = "Sales by week, RUB") +
theme(axis.text.x = element_text(angle = -30, vjust = 1, size = 7)) +
scale_y_continuous(label = unit_format(unit = "M")) +
stat_summary(fun.y = sum, aes(label = paste(format(round(as.numeric(..y..),1), big.mark = ",", nsmall = 0, digits = 0),
"M", sep = " " )),
geom = "text", vjust = -2, size = 2.5)
div=1000
sales_plot如果没有数据,我可以猜测net
列包含一些负数。我建议你先总结一下每周的销售情况,然后再将其制成图表。由于我没有实际数据,这里是我的伪代码
library(dplyr)
library(ggplot2)
sales_summary <- sales %>%
group_by(week) %>%
summarize(net_value = net / (div * div))
sales_plot <- ggplot(data = sales_summary, aes(x = week, y = net_value)) +
geom_bar(stat = "identity") +
geom_text(vjust = -2, size = 2.5) +
labs(x = "", y = "Net Value, RUB", title = "Sales by week, RUB") +
theme(axis.text.x = element_text(angle = -30, vjust = 1, size = 7)) +
scale_y_continuous(label = unit_format(unit = "M"), expand = c(0, 0))
库(dplyr)
图书馆(GG2)
销售额汇总%
按(周)分组%>%
汇总(净值=净值/(div*div))
sales\u plot如果你想改变天平的越界行为,那么你可以设置任何限制,你可以使用scale\u y\u continuous(…,oob=scales::oob\u keep)
。或者做coord\u cartesian(ylim=…)
。我应该为oob\u keep
选择哪些参数?还是毫无争议?我试着在scale\u y\u continuos
中写它,但是什么也没发生,倒数第二列总是在0以下oob\u keep
应该传递一个函数,所以你给这个函数的参数。您应该将其与limits=…
一起使用。请使用dput
或我们可以复制和使用的东西添加数据。还显示共享数据的预期输出。阅读有关和的文章。谢谢!我认为原因是我通过几个字段将值分组,并且与第二个字段对应的一列包含一些负值(尽管我在创建绘图时没有使用它)。我找到了一个简单的解决方案——只需在几周内删除第二个字段和组。我想有一个简单的方法,不改变初始数据表,只调整绘图的图层。