绘制连续数据二元变量的折线图

时间:2018-03-27 16:22:33

标签: r plot ggplot2 histogram

我正在寻找一种方法来帮助更好地可视化独立连续变量和二元响应变量之间的关系。

我想了解如何将第二个y轴添加到下面的现有绘图中。我想直观地了解不同数值范围内的响应率。

  1. 如何在任何给定的柱状图箱中添加响应百分比?例如,如果一个箱中有10个观测值,而2个是正类,那么这将显示20%的响应。
  2. 理想情况下,这可能是动态的,因为我可能会改变箱子的数量。例如,我在这里有10个,下次我可能想要20个。
  3. 这是一个连接的折线图,右y轴的#1对应百分比。
  4. 或者换句话说,我想要将正类的折线图显示为折线图,其中Y轴显示%show。

    library(mlbench)
    library(tidyverse)
    data(Sonar)   ## from mlbench
    library(ggplot2)
    
    ggplot(Sonar, aes(x=V11, fill=Class)) +
      geom_histogram(col='black', bins = 10) +
      scale_fill_manual(values=c("purple", "green"))  +
      labs(title = "Count Left Y Axis; 'R' class percent of BIN in Right Y Axis" ,
           x = 'Variable Value in this case V33', y ='Count of Observations' )
    

1 个答案:

答案 0 :(得分:2)

不确定这是否是您所追求的,但您提供的描述听起来非常类似于条件密度图。

ggplot可能有替代方案,但基础R:

cdplot(Class ~ V1, Sonar, col=c("cornflowerblue", "orange"), main="Conditional density plot")

结果:

cdplot