我正在使用R和ggplot来绘制一些数据的散点图,一切都很好,除了y轴上的数字是用计算机风格的指数格式出来的,即4e 05,5e 05等 . 这显然是不可接受的,所以我想把它显示为500,000,400,000等等 . 获得正确的指数表示法也是可以接受的 .
该图的代码如下:
p <- ggplot(valids, aes(x=Test, y=Values)) +
geom_point(position="jitter") +
facet_grid(. ~ Facet) +
scale_y_continuous(name="Fluorescent intensity/arbitrary units") +
scale_x_discrete(name="Test repeat") +
stat_summary(fun.ymin=median, fun.ymax=median, fun.y=median, geom="crossbar")
任何帮助非常感谢 .
5 回答
我还发现了另一种方法,可以在轴上给出正确的'x10(superscript)5'符号 . 我在这里发帖,希望对某些人有用 . 我从here得到了代码,所以我声称没有归功于它,这正确地归功于Brian Diggs .
您可以将其用作
我在这里比赛迟到了,但是在其他人想要一个简单的解决方案的情况下,我创建了一组可以被称为的函数:
它为您提供x或y轴的人类可读数字(或者通常是任何数字) .
您可以在此处找到这些功能:Github Repo只需将函数复制到脚本中即可调用它们 .
另一种选择是用逗号格式化你的轴刻度标签是使用包
scales
,然后添加你的ggplot声明 .
如果您不想加载包,请使用:
我发现Jack Aidley的建议答案很有用 .
我想抛出另一种选择 . 假设你有一个包含许多小数字的系列,并且你想确保轴标签写出完整的小数点(例如5e-05 - > 0.0005),然后: