我的轴刻度标签需要科学的格式,但是我想用“ 1.0 x 10 ^ 2”代替“ e + 00”后缀。我测试了this function by sherifffruitfly:
library(tidyverse)
library(scales)
fitFunc <- function(xVar){
0.01*xVar
}
#notation function by sherifffruitfly
scientific10 <- function(x){
ifelse(x==0, "0", parse(text=gsub("[+]", "", gsub("e", " %*% 10^", scientific_format()(x)))))
}
#plot
ggplot(data.frame(x = c(0, 4)), aes(x = x)) +
stat_function(fun = fitFunc, geom = "line")+
scale_y_continuous(
labels = scientific10
)
由reprex package(v0.3.0)于2020-05-11创建
结果看起来like this接近我想要的结果,但是只有一个“ 1 x 10 ^ -2”,没有小数位。我希望在这些标签中指定小数位,例如1.0 x 10 ^ -2或1.00 x 10 ^ -2,等等。
scientific10 <- function(x){
ifelse(x==0, "0", parse(text=gsub("[+]", "", gsub("e", " %*% 10^", scientific_format(digits = 3)(x)))))
}
,但没有用。那么如何获得1.00 x 10 ^ 2之类的格式?