我正在使用R编程语言。
我正在尝试禁用使用ggplot库生成的所有图的科学记数法。
通常,我使用以下命令禁用科学记数法:
options(scipen=999)
然而,上面的代码似乎并没有禁用科学计数法,例如下面的图(例如图例中):
g1 = ggplot() +
geom_sf(data = st_trans,
aes(fill = cut_number(min_distance, 9)),
alpha = 0.8,
colour = 'white',
size = 0.3) +
scale_fill_brewer(palette = "PuBu",
name = "Minimum Distance") +
labs(x = NULL, y = NULL,
title = "Minimum Distance",
subtitle = "Source: Your Data",
caption = "Your Caption") +
theme(panel.background = element_blank(),
line = element_blank()) +
coord_sf(datum = NA) +
scale_x_continuous(labels = scales::comma) +
scale_y_continuous(labels = scales::comma)
有没有人知道是否有一些“主命令”可以在使用ggplot生成的所有图中禁用科学计数法?
谢谢!
1条答案
按热度按时间ojsjcaue1#
经过一点挖掘,看起来问题出在
cut_number()
上,而不是ggplot。cut_number()
函数是base::cut.default的 Package 器,它有一个'default'科学计数法(即它忽略你设置的任何scipen)。幸运的是,cut_number()
接受一个“dig.lab”参数,所以你可以修改它以适应。例如,将dig.lab设置为50(最大值)应该可以解决这个问题:
创建于2023-04-24带有reprex v2.0.2