Używam pakietu grid, aby narysować jakiś wykres i wykorzystuję swoją zdolność do formatowania kleszczy osi za pomocą wyrażeń.

Nie mogę jednak dowiedzieć się, jak wyświetlić sformatowane etykiety tylko dla podzbioru kleszczy.

require(grid)
grid.newpage()
xg <- xaxisGrob(at=c(.1,.5,1),
                label = expression(10^-1, .5, 10^0),
                main=FALSE)

layout <- grid.layout(nrow=1, ncol=1,
                          heights = unit.c(unit(.25, "npc")),
                          widths = unit.c(unit(.25, "npc"))
                          )

pushViewport(viewport(layout=layout))
pushViewport(viewport(layout.pos.row=1, 
                      layout.pos.col=1))

grid.draw(xg)

Chciałbym nie pokazać żadnej etykiety dla 0,5 kleszcza. Jeśli wymieniam .5 z NULL lub '' lub tym podobne, etykieta o 1 jest również pominięta, bez błędu.

0
Eckhard 17 grudzień 2019, 12:08

1 odpowiedź

Najlepsza odpowiedź

To działa:

xg <- xaxisGrob(at=c(.1,.5,1),
                label = expression(10^-1, phantom(0), 10^0),
                main=FALSE)

resulting plot

2
Roland 17 grudzień 2019, 15:45