ฉันต้องการสุ่มตัวอย่างคะแนนจากการแจกแจงแบบปกติแล้วสร้าง dotplot ทีละตัวโดยใช้gganimate
แพ็คเกจจนกว่าเฟรมสุดท้ายจะแสดง dotplot แบบเต็ม
โซลูชันที่ใช้งานได้กับชุดข้อมูลที่มีขนาดใหญ่ขึ้น ~ 5,000 - 20,000 จุดเป็นสิ่งจำเป็น
นี่คือรหัสที่ฉันมี:
library(gganimate)
library(tidyverse)
# Generate 100 normal data points, along an index for each sample
samples <- rnorm(100)
index <- seq(1:length(samples))
# Put data into a data frame
df <- tibble(value=samples, index=index)
df มีลักษณะเช่นนี้:
> head(df)
# A tibble: 6 x 2
value index
<dbl> <int>
1 0.0818 1
2 -0.311 2
3 -0.966 3
4 -0.615 4
5 0.388 5
6 -1.66 6
พล็อตแบบคงที่แสดงดอทพล็อตที่ถูกต้อง:
# Create static version
plot <- ggplot(data=df, mapping=aes(x=value))+
geom_dotplot()
อย่างไรก็ตามgganimate
เวอร์ชั่นไม่ได้ (ดูด้านล่าง) มันวางจุดบนแกน x เท่านั้นและไม่ซ้อนทับกัน
plot+
transition_reveal(along=index)
สิ่งที่คล้ายกับสิ่งนี้จะเหมาะ: เครดิต: https://gist.github.com/thomasp85/88d6e7883883315314f341d2207122a1