2

我正在使用气泡图来直观地呈现我的数据。我面临的问题是在 R 中的气泡图中,面积较小的气泡隐藏在较大气泡的后面。

V1  V2                          V3     V4
fl  unfair business practices   14      Y
fl  Corrections                  1      Y
fl  Product differs              1      Y
fl  refund not paid              0      Y
fl  Single premium               0      Y
fl  unfair business practices    52     N
fl  Corrections                  63     N
fl  Product differs              9      N
fl  refund not paid              2      N
fl  Single premium               2      N
mc  unfair business practices    19     Y
mc  Corrections                  0      Y
mc  Single premium               0      Y
mc  unfair business practices    36     N
mc  Corrections                  2      N
mc  Single premium               2      N

symbols(dat1$V2, dat1$V1, circles=dat1$V3)
radius <- sqrt( dat1$V3/ pi )
symbols(dat1$V2, dat1$V1, circles=radius, inches = 0.35, fg = "dark blue", bg = "red", xlab = "CASE REASON", ylab = "WORDS")

我的问题是(比如说)V1 = "fl" 和 V2 = "unfair business practice" 在我的数据中出现了两次,我正在绘制 2 个气泡,但较小的一个隐藏在较大的气泡后面。我希望较小的在我的情节中可见

另外我想使用 V4 列来表示气泡的颜色。例如:如果 V4 = "Y",我希望气泡为红色,否则我希望它为绿色。

任何帮助,将不胜感激。谢谢

4

1 回答 1

1

如果您对数据进行排序,以便较小的圆圈位于 data.frame 的末尾:

dat1 <- dat1[order(dat1$V3, decreasing=TRUE),]

(并确保您在新的 dat1 上计算半径 - 或替换circles=radiuscircles = dat1$V3/pi)那么它应该会有所帮助(尽管如果现在一组小圆圈完全掩盖了一个较大的圆圈,那么您将永远无法看到所有数据!)

您可以更改符号调用中的 fg 和 bg 常量,例如bg=ifelse(dat$V4=="Y", "red", "green")

于 2014-03-25T12:13:20.080 回答