簡體   English   中英

在 x 軸上對齊 geom_jitter 點並將 y 視為頻率

[英]Aligning geom_jitter points on x axis and treating y as frequency

這是一個有點奇怪的問題,但這里有......

我想使用 geom_jitter 繪制一些圖,其中我在 x 軸上繪制一個分類變量並將 y 繪制為一條直線上的單個數據點。 我還希望數據點在 x 軸上的每個類別中垂直對齊。

目前我有這樣的事情:

y <- rep(1:5, each = 4)
x <- rep(c("1", "2", "3", "4", "5"), each = 4)
df <- cbind(y, x)
df <- as.data.frame(df)
df$y <- as.numeric(df$y)

p <- ggplot(df, aes(x, y))
p + geom_jitter(shape = 4, color = 'darkred', width = 0, height = 1, size = 5, alpha = 1)

抖動的情節

這給了我這個情節。

如前所述,我希望數據點垂直對齊且彼此等距。

有誰知道這是否可能?

本質上,我想像點圖中的頻率一樣對待你。

非常感謝!


我忘了提到我還希望點水平對齊,這樣繪圖看起來有點像頻率直方圖。

您想為此使用ggbeeswarm

library(ggplot2)
library(ggbeeswarm)

y <- rep(1:5, each = 4)
x <- rep(c("1", "2", "3", "4", "5"), each = 4)
df <- cbind(y, x)
df <- as.data.frame(df)
df$y <- as.numeric(df$y)

p <- ggplot(df, aes(x, y))
p + geom_beeswarm(shape = 4, color = 'darkred', size = 4,
                  groupOnX = F, # only swarm on Y axis
                  cex = 2) # increase space between points

這情節

在此處輸入圖片說明

暫無
暫無

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

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