R 镜像勾号功能不适用于ggplot

R 镜像勾号功能不适用于ggplot,r,ggplot2,R,Ggplot2,我想在图表的四个边上都打勾。建议的方法是mirror\u ticks library(ggplot2) library(ggplotTicks) sp6<-ggplot(Anna_Smooth, aes(y=log10(Prob2), x=log10(AvSize)))+ geom_point( data=Anna_Smooth, aes(y=log10(Prob2), x=log10(AvSize), color=PART) )+ guides( color=FALSE)

我想在图表的四个边上都打勾。建议的方法是
mirror\u ticks

library(ggplot2)
library(ggplotTicks)

sp6<-ggplot(Anna_Smooth, aes(y=log10(Prob2), x=log10(AvSize)))+
  geom_point( data=Anna_Smooth, aes(y=log10(Prob2), x=log10(AvSize), color=PART) )+ 
  guides( color=FALSE)


sp8<-sp6+ labs(x=expression(paste(log(s))))+
  labs(y=expression(paste(log(P(s))))   )+
  theme(axis.text.y   = element_text(size=14),
        axis.text.x   = element_text(size=14),
        axis.title.y  = element_text(size=15),
        axis.title.x = element_text(size=15),
        panel.background = element_blank(),
        panel.grid.major = element_blank(),
        panel.grid.minor = element_blank(),
        axis.line = element_line(colour = "black"),
        panel.border = element_rect(colour = "black", fill=NA, size=2)
)


sp10<-mirror_ticks(sp10, allPanels=TRUE)
库(ggplot2)
图书馆(ggplotTicks)

sp6从
ggplot2
版本2.2.0(2016-11-11)起,
scale\u x\u continuous()
scale\u y\u continuous()
可以显示一个与主轴相对的次轴,并且可以使用
sec.axis
参数进行控制

这可用于镜像记号标记

OP没有提供可复制的数据,因此我们使用
ggplot2
软件包附带的
mpg
数据集:

无镜像记号的图表

带有对数10刻度的镜像刻度线 次轴也可通过
scale\u x\u log10()
scale\u x\u log10()
功能使用

因此,可以避免在对
aes()
的调用中使用
log()
函数,但需要指定适当的日志比例:

ggplot(mpg, aes(displ, hwy)) +
  geom_point() +
  theme(
    axis.text.y   = element_text(size = 14),
    axis.text.x   = element_text(size = 14),
    axis.title.y  = element_text(size = 15),
    axis.title.x = element_text(size = 15),
    panel.background = element_blank(),
    panel.grid.major = element_blank(),
    panel.grid.minor = element_blank(),
    axis.line = element_line(colour = "black"),
    panel.border = element_rect(
      colour = "black",
      fill = NA,
      size = 2
    )
  ) +
  scale_x_log10(sec.axis = dup_axis(name = NULL, labels = NULL)) + 
  scale_y_log10(sec.axis = dup_axis(name = NULL, labels = NULL))

ggplot2
版本2.2.0(2016-11-11)起,
scale\u x\u continuous()
scale\u y\u continuous()
可以显示与主轴相对的次轴,并且可以使用
sec.axis
参数进行控制

这可用于镜像记号标记

OP没有提供可复制的数据,因此我们使用
ggplot2
软件包附带的
mpg
数据集:

无镜像记号的图表

带有对数10刻度的镜像刻度线 次轴也可通过
scale\u x\u log10()
scale\u x\u log10()
功能使用

因此,可以避免在对
aes()
的调用中使用
log()
函数,但需要指定适当的日志比例:

ggplot(mpg, aes(displ, hwy)) +
  geom_point() +
  theme(
    axis.text.y   = element_text(size = 14),
    axis.text.x   = element_text(size = 14),
    axis.title.y  = element_text(size = 15),
    axis.title.x = element_text(size = 15),
    panel.background = element_blank(),
    panel.grid.major = element_blank(),
    panel.grid.minor = element_blank(),
    axis.line = element_line(colour = "black"),
    panel.border = element_rect(
      colour = "black",
      fill = NA,
      size = 2
    )
  ) +
  scale_x_log10(sec.axis = dup_axis(name = NULL, labels = NULL)) + 
  scale_y_log10(sec.axis = dup_axis(name = NULL, labels = NULL))

起重机上没有
ggplotTicks
包装。我想你指的是
https://github.com/infotroph/ggplotTicks
?自2016年以来,此软件包未在github上更新。也许,它与最新版本的
ggplot2
不兼容。您使用的是哪个版本的
ggplot2
?我想是这样的。。您知道如何使用主题设置来完成此任务吗?CRAN上没有
ggplotTicks
软件包。我想你指的是
https://github.com/infotroph/ggplotTicks
?自2016年以来,此软件包未在github上更新。也许,它与最新版本的
ggplot2
不兼容。您使用的是哪个版本的
ggplot2
?我想是这样的。。您知道如何使用主题设置来完成此任务吗?
g1 + 
  scale_x_continuous(sec.axis = dup_axis(name = NULL)) + 
  scale_y_continuous(sec.axis = dup_axis(name = NULL))
g1 + 
  scale_x_continuous(sec.axis = dup_axis(name = NULL, labels = NULL)) + 
  scale_y_continuous(sec.axis = dup_axis(name = NULL, labels = NULL))
ggplot(mpg, aes(displ, hwy)) +
  geom_point() +
  theme(
    axis.text.y   = element_text(size = 14),
    axis.text.x   = element_text(size = 14),
    axis.title.y  = element_text(size = 15),
    axis.title.x = element_text(size = 15),
    panel.background = element_blank(),
    panel.grid.major = element_blank(),
    panel.grid.minor = element_blank(),
    axis.line = element_line(colour = "black"),
    panel.border = element_rect(
      colour = "black",
      fill = NA,
      size = 2
    )
  ) +
  scale_x_log10(sec.axis = dup_axis(name = NULL, labels = NULL)) + 
  scale_y_log10(sec.axis = dup_axis(name = NULL, labels = NULL))