如何将日志刻度标记放在辅助轴上?

捣碎器

我正在做一个带有次要y轴的绘图,它只是主轴的倍增比例,以替代单位显示它。

我的主要y轴是对数缩放的,对数刻度为annotation_logticks有什么方法可以获取缩放后的次级y轴中的对数刻度?目前他们在主要部队。

library(tidyverse)

x=c(100,1000000,100,1000000)
y=c(0.01,0.01,0.32,0.32)
z=c(1,1,0.5,0.5)
data <- data.frame(x,y,z)

data %>%
  ggplot(aes(x = x, y = y, z = z, fill = z)) +
  geom_raster(interpolate=TRUE) + 
  coord_fixed(ratio = 1, xlim = c(100,1000000), ylim=c(0.01,0.32)) +
  annotation_logticks(sides = "trbl") + 
  scale_x_log10() +
  scale_y_log10(sec.axis = sec_axis(~ . / 0.0714,
                                    breaks=c(0.2,0.5,1,2,5),
                                    name = "Sec. Axis")) + 
  scale_fill_continuous() +
  theme_bw()

reprex软件包(v0.3.0)创建于2020-08-24

额外的图片:

当前,右轴如下所示: 错误的右轴日志刻度

我希望轴看起来像: 正确的右轴日志刻度

艾伦·卡梅伦

似乎没有办法直接执行此操作annotation_logticks,因为您可以更改的唯一位置参数是base但是,更改基准不会影响由主轴值确定的主断点的位置。

但是,您可以通过在辅助轴上手动设置中断和标签来达到类似的效果:

data %>%
  ggplot(aes(x = x, y = y, z = z, fill = z)) +
  geom_raster(interpolate=TRUE) + 
  coord_fixed(ratio = 1, xlim = c(100,1000000), ylim=c(0.01,0.32)) +
  annotation_logticks(sides = "tbl") + 
  scale_x_log10() +
  scale_y_log10(sec.axis = sec_axis(~ . * 14,
                                    breaks= c(seq(0.1, 1, 0.1), 2:5),
                                    labels =  replace(character(14), 
                                                      c(2, 5, 10, 11, 14), 
                                                      c(0.2, 0.5, 1, 2, 5)),
                                    name = "Sec. Axis")) + 
  scale_fill_continuous() +
  theme_bw() 

在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何将日期放在barplot()x轴上?

来自分类Dev

如何将辅助轴添加到highstock图表?

来自分类Dev

如何将标题放在桌子上?

来自分类Dev

如何将CirclePageIndicator放在ActionBar上

来自分类Dev

如何将 bash 命令的日志放在变量中?

来自分类Dev

如何将foreach循环放在<td>标记内

来自分类Dev

偏移辅助轴的刻度线

来自分类Dev

将刻度线放在特定值上

来自分类Dev

如何知道何时将结束标记放在嵌套元素上

来自分类Dev

如何知道何时将结束标记放在嵌套元素上

来自分类Dev

matplotlib:如何从辅助轴删除刻度线和刻度线值?

来自分类Dev

如何将x轴标签与HTML中对应的刻度线对齐?

来自分类Dev

如何将matplotlib轴刻度标签的fontweight设置为粗体?

来自分类Dev

如何将特定的 x 轴(次要)刻度标签移动到 matplotlib 中图形的顶部?

来自分类Dev

我如何自己将数字放在y轴的x轴上?

来自分类Dev

R如何标记不连续的X轴刻度

来自分类Dev

如何将文本放在ggplot中的不同行上

来自分类Dev

如何将Hard Block放在蓝牙和WiFi上?

来自分类Dev

如何将光标放在HTML属性上?

来自分类Dev

如何将SMTP配置放在单独的文件上?

来自分类Dev

如何将JLabel文本放在JTextField上

来自分类Dev

如何将python脚本放在路径上?

来自分类Dev

如何将鼠标光标放在JFileChooser的OPEN按钮上?

来自分类Dev

我如何将标题放在React Natives ToolbarAndroid上?

来自分类Dev

如何将小部件放在网页上

来自分类Dev

如何将重点放在具有绑定的元素上?

来自分类Dev

如何将联系表单放在滑块上

来自分类Dev

如何将导航栏放在自己的行上居中?

来自分类Dev

如何将@error类放在laravelcollective上

Related 相关文章

热门标签

归档