使用ggplot中的stat_density_2d求和因子的密度图

时间:2018-04-28 13:50:17

标签: r ggplot2 sum density-plot

我有一个包含29列和2500行的测试数据集。需要在绘图上表示三列,第一个是简单的X,Y坐标对表示测试中使用的图像上的实际X,Y坐标,第三个是来自参与者的响应给出简单的是或否答案(记录为1和-1)。

在测试中使用每个X,Y坐标的名称时间,并且我试图获得每个点的整体偏差。可以通过Y,N个答案的简单总和找到这些值。我的问题是我无法绘制"总和"答案中,只有是和否的密度。我需要向每个点显示偏向是和否的偏差,所以有两个图或只是在同一个图上绘制两组结果几乎没有价值。

在代码I中,使用X值为audioDim1a,Y值为audioDim2。使用了2个已减少的DF - 一个包含所有Y答案,另一个包括所有N个答案。

此代码使用两个N& Y个数据框

ggplot() + 
xlim(0, 110) + ylim(0, 150) + 
stat_density_2d(data = test_plot_N, aes(audioDim1a, audioDim2, alpha="density", fill = "density"), geom = "polygon", size = 0.2, contour = T, n = 150, h = 20, bins = 10, colour = "purple") + stat_density_2d(data = test_plot_Y, aes(audioDim1a, audioDim2, alpha="density", fill = "density"), geom = "polygon", size = 0.2, contour = T, n = 150, h = 20, bins = 10, colour = "green") + geom_point(data = test_plot_N, aes(audioDim1a, audioDim2), colour = "blue", size = 1)

如果我使用数据集(见下文)与YN相结合,我希望得到的情况是,如果Y和N的答案数相等,则密度会导致0绘图,因此轮廓填充将是清晰/白色。这不会发生,因为它似乎只是显示响应计数而不是算术总和。

ggplot() + 
xlim(0, 110) + ylim(0, 150) + 
stat_density_2d(data = test_plot, aes(audioDim1a, audioDim2, alpha="density", fill = "density"), geom = "polygon", size = 0.2, contour = T, n = 150, h = 20, bins = 10, colour = "purple") + 
geom_point(data = test_plot_N, aes(audioDim1a, audioDim2), colour = "blue", size = 1)

我是否需要使用?

提供数据集和完整的R代码?

任何帮助都会非常感激。

0 个答案:

没有答案