Jak rysować linie poza obszarem wydruku w ggplot2?
Stworzyłem tę fabułęggplot2:
Linie zewnętrzne muszą odpowiadać skali Y, tj. Pozycja Y linii dla Tekstu1 powinna wynosić 100 i 85). Jedynym sposobem, w jaki mogę to zrobić, jest narysowanie pustego wykresu po prawej stronie figury w tej samej skali, co wykres słupkowy, a następnie użycie funkcji adnotacji do narysowania linii. Innym podejściem jest proste „ręczne” narysowanie linii za pomocągrid.lines
, jednak współrzędnegrid.lines
nie odpowiada skali Y wykresu.
Czy można jakoś narysować te linie przy użyciu innego podejścia? Zakładam, że trzeba to zrobićgrid.lines
. Jak mogę przekazać współrzędne Y wykresu słupkowego dogrid.lines
?
Poniżej znajduje się minimalny kod użyty do utworzenia tej liczby:
<code>library (ggplot2) test= data.frame( group=c(rep(1,6), rep(2,6)), subgroup=c( 1,1,1,2,2,2,1,1,1,2,2,2), category=c( rep(1:3, 4)), count=c( 10,80,10,5,90,5, 10,80,10,5,90,5 ) ) qplot(subgroup, count, data=test, geom="bar", stat="identity", fill =category, facets = .~ group, width=0.9)+ opts(legend.position="none", plot.margin = unit(c(0,9,2,0), "lines")) </code>
Jak narysować linie po prawej stronie pasków?
Ostatnio zadałem pytanie o rysowanie tekstu poza obszarem działki wggplot2 a rozwiązaniem było użyciegt$layout
igrid.draw
.
Wyświetlanie tekstu poniżej wykresu wygenerowanego przez ggplot2
Czy można tu zastosować podobne podejście? Rozumiem, że annotation_custom dotyczy tylko tekstu i nie będzie działać z innymi elementami graficznymi. Dzięki