gpt4 book ai didi

r - R中的标签对数刻度显示

转载 作者:行者123 更新时间:2023-12-03 21:15:07 26 4
gpt4 key购买 nike

在绘制组织干图,散点图和其他图(轴的比例缩放为R的对数)时,如何使用诸如10 ^ -1 10 ^ 0 10 ^ 1 10 ^ 2 10 ^ 3之类的标签代替显示的轴仅-1、0、1、2、3等。应将哪些参数添加到命令中,例如hist(),plot()等?

最佳答案

除了ggplot2的解决方案(请参阅gsk3的注释)之外,我还要补充一点,当使用正确的参数时,这也会在plot()中自动发生,例如:

x <- 1:10
y <- exp(1:10)
plot(x,y,log="y")


您可以将参数 log="x"用于X轴,或者将 log="xy"用于两者。

如果要格式化数字,或者数据具有对数格式,则可以使用axis()来解决。一些有趣的功能:


axTicks(x)为您提供刻度线在X轴(x = 1)或Y轴(x = 2)上的位置
bquote()将表达式转换为语言,但可以用其值替换变量。问题 Latex and variables in plot label in R?中有关 bquote()的更多信息。
as.expression()使来自 bquote()的语言对象成为表达式。这使 axis()可以按照 ?plotmath中的说明进行格式化。语言对象无法做到这一点。


一个漂亮的格式化示例:

x <- y <- 1:10
plot(x,y,yaxt="n")
aty <- axTicks(2)
labels <- sapply(aty,function(i)
as.expression(bquote(10^ .(i)))
)
axis(2,at=aty,labels=labels)


这使

关于r - R中的标签对数刻度显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6897243/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com