【问题标题】:Unwanted default thick axis lines in R plot functionR绘图函数中不需要的默认粗轴线
【发布时间】:2015-01-01 16:30:05
【问题描述】:

当我在 R 中绘制任何图时,它总是会沿着周围框的编号部分产生更粗的轴线。这是一个麻烦,因为我必须始终在 plot() 中关闭轴,然后以零厚度重新绘制它们。我注意到其他实验室同事的电脑似乎没有这个问题,这让我想知道问题出在哪里。

情节 1 生成了我不需要的粗轴线,情节 2 可以作为解决方案:

x<-c(1:10)
y<-c(1:10)
# Plot 1
plot(x,y, main="Plot 1")
# Plot 2
plot(x, y, xaxt='n', yaxt='n', main="Plot 2")
axis(1, lwd=0, lwd.ticks=1)
axis(2, lwd=0, lwd.ticks=1)

我在 Mac OSX 10.9.4 上运行 RStudio 0.98.501

非常感谢有关错误根源的任何想法。谢谢。

【问题讨论】:

  • 您现在应该可以添加这些图片了。
  • @jbaums - 太好了,谢谢并编辑。
  • 在某些系统上(可能是由于抗锯齿设置等),轴的一部分显得更粗,因为框线和轴的线是相互重叠的(执行plot(x, y, bty='n') 以查看轴只延伸到外部刻度)。当我遇到这个问题时,我通常只是在所有其他绘图命令之后执行box()(或例如box(lwd=2)),这往往会使其不那么明显。
  • @jbaums 是的,确实你是对的,他们正在相互策划。重绘框技巧可以掩盖事情 - 尽管根据出版要求(即线条粗细)制作数字,但它仍然增加了额外的步骤......虽然与所有其他事情相比很小。真的只是我想摆脱的视觉默认滋扰。
  • 如果您愿意深入了解ggplot2,此讨论可能有一些线索:r.789695.n4.nabble.com/…

标签: r plot axes


【解决方案1】:

你可以创建一个新的绘图函数,类似这样的东西应该可以工作:

plot = function(x, y, ...){
    plot(x, y, xaxt='n', yaxt='n')
    axis(1, lwd=0, lwd.ticks=1)
    axis(2, lwd=0, lwd.ticks=1)
}

【讨论】:

    猜你喜欢
    • 2014-09-15
    • 1970-01-01
    • 2021-03-12
    • 2014-11-21
    • 2022-12-18
    • 1970-01-01
    • 1970-01-01
    • 2020-05-22
    • 2020-07-15
    相关资源
    最近更新 更多