Я пытаюсь пометить ось на каждом третьем тике значением 10 ^ n, отформатированным как верхний индекс. Я использую grid
графику. Я делаю что-то против баса. Вот MWE (или я вижу, что есть некоторые движения, чтобы назвать это репрексом):
library("grid")
grid.newpage()
axisVP <- viewport(width = unit(6, "inches"), height = unit(0.01, "inches"))
pushViewport(axisVP)
labs <- c(1, "", "", expression(10^{-3}), "", "", expression(10^{-6}), "", "",
expression(10^{-9}), "", "", expression(10^{-12}))
grid.xaxis(at = seq(0, 1, length.out = 15)[-c(1,15)], label = labs)
Однако это помечает только первый тик с 1. Глядя на str(labs)
, это выражение с длиной 13, как и ожидалось. И выражения принимаются grid.xaxis
. Поэтому я не совсем уверен, почему отображается только первое значение. Я изучил связанные вопросы по SO, но большинство из них, похоже, имеют дело с одним выражением в качестве метки или заголовка оси, а не с серией выражений. И большинство вопросов, связанных с метками осей, направлены на то, чтобы пометить каждый тик с помощью специальной функции.