簡體   English   中英

R中反向條形圖中的線

[英]lines in an inverted barplot in R

我想在R中的條形圖上使用參數lines添加一條線,但是我的條形圖是反轉的horiz horiz = TRUE ,當我寫lines該行沒有被反轉。

例如:

x = c(4,7,8,6,9,10,12,6,5,8,14,10,6,8,5,3)

barplot(x, horiz = TRUE, space = 0)

lines(x, col="red")

我想要的是:

我想要的是

我得到的是:

第二

對於基本的R解決方案,您需要為lines提供適當的x和y:

lines(y = seq_along(x) - 1, x = x, col="red")

請注意,這些軸未切換,y表示垂直軸。

在此處輸入圖片說明

使用ggplot2 ,這並不難。 筆記:

  • 您可能希望將x放在data.frame ,以使其更易於引用,並且您需要創建一個序列以制作垂直軸(此處為seq_along )。
  • aes因為變量x映射到y ,但是由於它提供了高度,所以這就是您想要的。
  • 您還需要在geom_bar指定stat = 'identity' ,這樣它才不會嘗試制作直方圖。
  • 最后, coord_flip翻轉整個圖的軸。

總而言之:

library(ggplot2)
ggplot(data.frame(x), aes(x = seq_along(x), y = x)) + 
    geom_bar(stat = 'identity') + 
    geom_line(colour = 'red') + 
    coord_flip()

帶有紅線的側向條形圖

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM