数据科学与R语言R语言与统计分析R学习与可视化

R语言Rose

2019-10-25  本文已影响0人  MJades

重点就是把柱状图画好,然后极坐标系展示就可以了~

简单的画图,数据类型data.frame,Gene一列为character,RatioIC为numeric;

p = ggplot(dt, aes(x = reorder(Gene,RatioIC), y = RatioIC, fill = Gene)) + 

# reorder 让Gene的显示排序按照RatioIC值排序来

  geom_bar(stat = "identity", alpha = 0.7) +  #width=0.9

  coord_polar()

1. 调节间距

geom_bar(stat = "identity", alpha = 0.7,width=0.9)

width可以调整每个柱子之间的间距,从而导致极坐标系下图形距离变大;

Fig 1a. width=0.8 Fig 1b. width=1

2. 极坐标的改变

coord_polar() #()可以是"","x","y"

若是"x",则是rose;

若是"y",则是图2;

coord_flip() # x,y轴倒转;

Fig 2.coord_polar("y")

3. 具有中间圈图的类型

不知道别人怎么画出来的,我直接在原数据基础上加了相同的行,并多加一列Group,之前的是Group="x",复制的数据Group=“y”

p = ggplot(dt, aes(x = reorder(Gene,RatioIC), y = RatioIC, fill = Group)) +

  geom_bar(stat = "identity", alpha = 0.7,width=0.9) +

  geom_col(aes(fill = Group))+ #表示每个柱子要根据Group进行填充,上面颜色填充也是Group;

  coord_polar()

 Fig 3a. 画出来的柱状图如图所示 Fig 3b.极坐标系下的图形
上一篇 下一篇

猜你喜欢

热点阅读