Как определить разные разрывы по оси Y для разных фасетов в ggplot2? - PullRequest
1 голос
/ 27 января 2020

Я делаю сюжет с 5 гранями в одном столбце (один над другим). Каждый аспект имеет свою шкалу, поэтому я хотел бы контролировать их независимо.

Я нашел много постов об использовании facet_grid() и facet_wrap(scales="free"), которые помогли мне добраться туда, где я сейчас. Проблема, с которой я сейчас сталкиваюсь, заключается в том, что я хочу контролировать breaks=... для каждого аспекта независимо.

Я прилагаю код и сгенерированный график ниже. После этого у меня будут следующие перерывы:

A: breaks=seq(0,100,100)
B: breaks=seq(0,100,100)
C: breaks=seq(0,50,50)
D: breaks=seq(0,50,50)
E: breaks=seq(0,1,1)

Вот код, который я использую:

P1 = (
ggplot(data=Melt_jacc)
+ theme(plot_title=element_text(family="sans", face="bold", 
                colour='#261A1A', size=11),
axis_title_x=element_text(  family="sans", face="plain",
                colour='#261A1A', size=8),
axis_title_y=element_text(  family="sans", face="plain",
                colour='#261A1A', size=8),
axis_text_x=element_text(family="sans", face="plain", colour='#261A1A', size=8),
axis_text_y=element_text(family="sans", face="italic", colour='#261A1A', size=8),
legend_text=element_text(family="sans", face="italic", colour='#000000', size=8),
legend_title=element_text(family="sans", face="plain", colour='#000000', size=8),
panel_background=element_rect(fill='#DCDCDC', colour='#DCDCDC'),
aspect_ratio=0.10)
+ geom_path(aes(x="W_start", y="Value"))
+ xlab("")
+ ylab("")
+ scale_x_continuous(breaks=[i for i in range(0, int(round(max_w_start, 0))+1, 10)])
+ facet_wrap("~Feature", ncol=1, nrow=5, scales="free")

Минимальный воспроизводимый пример:

W_start   Feature  Value
1e-06     A        99.89149799271286
1e-06     B        27.99456789950614
1e-06     C        0.2800972557482842
1e-06     D        21.88149573053865
1e-06     E        11.951939787204779
0.500001  A        99.8872433673878
0.500001  B        39.903385369530184
0.500001  C        0.3990437584450681
0.500001  D        21.651613497351686
0.500001  E        16.218571067386492
1.000001  A        99.68340665844283
1.000001  B        29.485607124776283
1.000001  C        0.2955747465536663
1.000001  D        21.82974842452379
1.000001  E        13.371618925552884
1.500001  A        99.8551242186434
1.500001  B        31.59424329259972
1.500001  C        0.31616356004139584
1.500001  D        21.647795798031016
1.500001  E        13.138475110502567

Вот сгенерированный сюжет: enter image description here

Спасибо всем за помощь, заранее!

...