R 按组对ggplot x变量重新排序
我有一些数据是根据我之前提出的一个问题得出的。我可以使用以下方法进行绘图:R 按组对ggplot x变量重新排序,r,ggplot2,R,Ggplot2,我有一些数据是根据我之前提出的一个问题得出的。我可以使用以下方法进行绘图: df2 %>% arrange(outcome) %>% tibble() %>% mutate(id = row_number()) %>% pivot_longer(cols = c(V1:V5)) %>% ggplot(aes(x = id, y = value)) + geom_point(aes(y = 4, color = as.factor(o
df2 %>%
arrange(outcome) %>%
tibble() %>%
mutate(id = row_number()) %>%
pivot_longer(cols = c(V1:V5)) %>%
ggplot(aes(x = id, y = value)) +
geom_point(aes(y = 4, color = as.factor(outcome)), size = 0.5) +
scale_color_manual(values = c("red","black"), labels = c("Dead","Alive")) +
geom_col(aes(fill = name),width = 1, alpha = 0.9) + labs(x = "ID", color = "Outcome") +
theme(axis.text.x=element_blank(),
axis.ticks.x=element_blank())
这就是我想要的。图的开头是红点,结尾是黑点。但是,我想按照类似于以下内容的方式安排这两个小组:
df2 %>%
arrange(outcome) %>%
tibble() %>%
mutate(id = row_number()) %>%
pivot_longer(cols = c(V1:V5)) %>%
ggplot(aes(x = reorder(factor(id, unique(id)), value, sum), y = value)) +
geom_point(aes(y = 4, color = as.factor(outcome)), size = 0.5) +
scale_color_manual(values = c("red","black"), labels = c("Dead","Alive")) +
geom_col(aes(fill = name),width = 1, alpha = 0.9) + labs(x = "ID", color = "Outcome") +
theme(axis.text.x=element_blank(),
axis.ticks.x=element_blank())
现在,整个绘图由reorder(factor(id,unique(id)),value,sum)
给出的value
列的总和排列
我的问题是,我如何使用第一个绘图,让红点在开始,黑点在结束,并通过<代码>值代码>列的总和“子”排列每组数据
数据:
df这可以通过首先按所需顺序排列数据集来实现,即结果
和值之和
,然后使用forcats::fct_顺序
对id
进行相应排序:
库(ggplot2)
图书馆(dplyr)
图书馆(tidyr)
图书馆(供猫用)
df%>%
安排(结果)%>%
tibble()%>%
变异(id=行号())%>%
枢轴长度(cols=c(V1:V5))%>%
添加计数(id,wt=value,name=“sum\u value”)%>%
安排(结果、和值)%>%
突变(id1=fct_顺序(因子(id))%>%
ggplot(aes(x=id1,y=value))+
几何点(aes(y=4,颜色=as.因子(结果)),大小=0.5)+
比例颜色手册(值=c(“红色”、“黑色”)、标签=c(“死亡”、“活着”))+
几何图形颜色(aes(填充=名称),宽度=1,α=0.9)+实验室(x=“ID”,color=“结果”)+
主题(axis.text.x=element_blank(),
axis.ticks.x=元素_blank()
由(v0.3.0)尝试重新创建您的示例于2020年5月24日创建,我得到“列V1
不存在”。在它发生变化且列名更改为$X1后立即出错
df <- structure(list(V1 = c(0.540974020957947, 0.927956461906433, 0.679950773715973,
-0.436222612857819, 0.457550287246704, -0.630265891551971, 0.630780100822449,
0.418105125427246, -0.29603236913681, -0.558571577072144, 0.685096621513367,
-0.105572499334812, 0.685096621513367, 0.630698442459106, -0.296185970306396,
0.867228746414185, 0.839851379394531, -0.407550632953644, -1.23068189620972,
-0.232768982648849, -0.45151561498642, -0.618267416954041, -0.44173675775528,
0.679950773715973, -0.76373964548111, -0.682370126247406, -0.0970236286520958,
0.308583676815033, -0.398456454277039, -0.781804263591766, -0.357583403587341,
0.829942345619202, 1.15367841720581, -0.349084734916687, 0.339786231517792,
-0.274633675813675, 0.434021949768066, -0.379803895950317, 1.12600564956665,
0.538651287555695, 0.729334473609924, 1.11921846866608, 0.535243451595306,
0.530025899410248, 0.538651287555695, 0.580114483833313, -0.344888269901276,
-0.758356392383575, 0.433039009571075, 0.452548682689667), V2 = c(-0.946385502815247,
0.346783518791199, 0.335686177015305, -0.59157657623291, -0.123747371137142,
-0.652664184570312, 0.586644172668457, 0.730981111526489, -0.863614797592163,
0.127854824066162, 0.572437882423401, 0.90553081035614, 0.572437882423401,
0.604371428489685, 0.152438431978226, 0.352877289056778, 0.4686459004879,
-0.291370570659637, 0.210557401180267, 0.8441561460495, -0.844375014305115,
-0.559487581253052, -0.566528797149658, 0.335686177015305, -0.120377041399479,
-0.681918144226074, 0.915897369384766, -0.147260695695877, 0.556753039360046,
-0.344621360301971, 0.584530115127563, 0.432545781135559, 0.372453421354294,
-0.837476432323456, -1.04467070102692, 0.48720371723175, 0.557223737239838,
-0.867825925350189, -0.997654914855957, 0.398110568523407, 0.302819103002548,
-0.865058422088623, 0.798324704170227, -0.991984903812408, 0.398110568523407,
-0.974891722202301, -0.610303223133087, 0.467437922954559, 0.398110568523407,
0.755794286727905), V3 = c(-0.447049021720886, 0.462770104408264,
0.524555385112762, -0.678337693214417, -0.258618295192719, -0.606096684932709,
0.465691596269608, 0.500304698944092, -1.11152529716492, 0.401461124420166,
0.401484251022339, 0.60296368598938, 0.401484251022339, 0.525019645690918,
0.344976842403412, 0.462770104408264, 0.507511615753174, -0.3294717669487,
0.368079423904419, 0.489510506391525, -1.06783151626587, -0.62083101272583,
-0.438432902097702, 0.524555385112762, -0.400415688753128, -0.701131463050842,
0.560686111450195, -0.31059992313385, 0.55268931388855, -0.434289932250977,
-0.502131402492523, 0.451888293027878, -0.393282651901245, -1.17837882041931,
-1.02576661109924, 0.354237675666809, -0.210425049066544, -1.05897736549377,
-0.481473177671432, 0.453531265258789, 0.347654938697815, -0.348089516162872,
0.526304006576538, -1.04387092590332, 0.453531265258789, -0.872735559940338,
-0.837841033935547, 0.31141585111618, 0.537650644779205, 0.414667755365372
), V4 = c(0.246048405766487, 0.52887761592865, 0.52887761592865,
-0.363897234201431, -0.452131509780884, -0.274207383394241, 0.311050325632095,
0.261809468269348, 0.175037130713463, -0.609464287757874, -0.802706837654114,
0.562854111194611, -0.802706837654114, 0.270524382591248, -0.95845901966095,
0.583511531352997, 0.522512197494507, -0.345179617404938, 0.344634592533112,
-0.736851334571838, 0.23341578245163, -0.289211988449097, -0.410425961017609,
0.52887761592865, -0.343501180410385, -0.199645578861237, 0.310131520032883,
-0.496455907821655, 0.523803949356079, -0.403718531131744, -0.0587362833321095,
0.567582190036774, 0.218788951635361, 0.154369011521339, 0.194721877574921,
-0.926964700222015, 0.287931680679321, 0.121043145656586, 0.1999192237854,
0.335065960884094, -0.89701521396637, -0.362093269824982, 0.445541679859161,
0.176597759127617, 0.335065960884094, 0.14811635017395, -0.360089123249054,
-0.619796454906464, 0.365053594112396, -0.823703289031982), V5 = c(-0.218326300382614,
-0.0852589569985867, -0.0358568467199802, -0.182288771495223,
0.329492785502225, 0.22641474287957, -0.295229163952172, -0.0018882118165493,
-0.156187456101179, -0.185811480507255, 0.5745202396065, 0.185778394341469,
0.5745202396065, 0.263958130963147, -0.0930145438760519, -0.0852589569985867,
0.120846922509372, -0.177850923500955, -0.0906162718310952, 0.68638701736927,
-0.122016451321542, -0.164524817839265, -0.335341416299343, -0.0358568467199802,
-0.0561889922246337, 0.0127423945814371, 0.443645818158984, -0.145148247014731,
0.23308814689517, 0.215704505331814, -0.484601685777307, -0.0646083690226078,
0.221014636568725, -0.0417518625035882, -0.239753630012274, -0.288708009757102,
0.442076873965561, 0.319284414872527, 0.067968207411468, -0.0639804862439632,
0.106456406414509, 0.529075344558805, 0.108210883568972, -0.161871433258057,
-0.0639804862439632, -0.130908504128456, -0.0992011674679816,
-0.0441093863919377, -0.0724753104150295, 0.36998612806201),
grp = c(1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L), id = c(166L, 61L, 54L, 240L,
179L, 272L, 76L, 87L, 224L, 164L, 13L, 125L, 14L, 41L, 147L,
64L, 33L, 260L, 95L, 10L, 219L, 234L, 243L, 53L, 261L, 279L,
123L, 177L, 127L, 269L, 142L, 63L, 18L, 214L, 168L, 141L,
20L, 263L, 191L, 75L, 3L, 182L, 31L, 171L, 74L, 170L, 249L,
154L, 67L, 4L), outcome = c(1, 1, 1, 0, 1, 0, 0, 1, 1, 1,
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0,
0, 1, 0, 0, 1, 0, 0, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1,
1, 0)), class = "data.frame", row.names = c(NA, -50L))