繁体   English   中英

在散点图中包括图例,其中图的大小指示频率

[英]Including a Legend in a Scatterplot where size of plot indicates frequency

我正在尝试为散点图添加图例,其中散点图的大小指示配对数

freqData <- as.data.frame(table(galton$child, galton$parent))
names(freqData) <- c("child", "parent", "freq")

plot(as.numeric(as.vector(freqData$parent)), 
      as.numeric(as.vector(freqData$child)),
      pch = 21, col = "black", bg = "lightblue",
      cex = .10 * freqData$freq, 
      xlab = "parent", ylab = "child")
legend("bottomright","(freqData)",pch=21, title="freqData")

可以通过将pt.cex值的向量传递给legend()来更改legend() pt.cex大小。 以下代码用于生成样本图。 该示例使用频率的平方根,以便点面积与该配对中的计数成比例。

# historical data
library('HistData')

# Galton Data
rawData <- Galton

# making a set of unique parings and counting frequency
freqData <- unique(rawData)
freqData$count <- NA

for(i in 1:nrow(freqData)){
  freqData$count[i] <- length(intersect(which(rawData$parent %in% freqData$parent[i]),which(rawData$chil %in% freqData$child[i])))
}

# making plots
plot(freqData$parent
     ,freqData$child
     ,pch=19 # plot symbol
     ,cex=0.1*sqrt(freqData$count)) # point expansion
# adding legend
legend('bottomright' # location
       ,legend=c(1,5,10,15,20,25,30,35) # entries
       ,title='count' # title
       ,pt.cex=0.1*sqrt(c(1,5,10,15,20,25,30,35)) # point expansion
       ,pch=19 # plot symbol
       ,ncol=2 # number of columns
       )

在此处输入图片说明

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM