具体来说,这是在facet_grid中。已经在谷歌上广泛搜索了类似的问题,但不清楚语法或它的去向。我想要的是y轴上的每一个数字,小数点后都有两位,即使后面的一位是0。这是scale_y_continuous或element_text或...中的参数吗?
row1 <- ggplot(sector_data[sector_data$sector %in% pages[[x]],], aes(date,price)) + geom_line() +
geom_hline(yintercept=0,size=0.3,color="gray50") +
facet_grid( ~ sector) +
scale_x_date( breaks='1 year', minor_breaks = '1 month') +
scale_y_continuous( labels = ???) +
theme(panel.grid.major.x = element_line(size=1.5),
axis.title.x=element_blank(),
axis.text.x=element_blank(),
axis.title.y=element_blank(),
axis.text.y=element_text(size=8),
axis.ticks=element_blank()
)
4条答案
按热度按时间ykejflvf1#
在
?scale_y_continuous
的帮助中,参数'labels'可以是一个函数:标签之一:
我们将使用最后一个选项,这个函数将
breaks
作为参数,并返回一个小数点后2位的数字。6jygbczu2#
“scales”包有一些很好的函数来格式化坐标轴。其中一个函数是number_format()。所以你不必先定义你的函数。
6mw9ycah3#
number_format()
已停用。使用label_number()
。这也可以应用于百分比和其他连续标度(例如:label_percent()
; https://scales.r-lib.org/reference/label_percent.html)。x6yk4ghg4#
有几个人建议使用scales包,但在这里,您也可以使用
format()
函数对baseR执行几乎相同的操作。