r - 使用 stat_summary_hex 以离散色标显示最频繁的值

标签 r ggplot2 visualization

我有一个包含 10k 行和 3 列的数据框:xpos、ypos 和集群(集群是 0 到 9 之间的数字):http://pastebin.com/NyQw29tb

我想显示一个六边形图,每个六边形根据该六边形内最常见的集群着色。

到目前为止,我有:

 library(ggplot2)
 library(hexbin)
 ggplot(clusters, aes(x=xpos, y=ypos, z=cluster)) + stat_summary_hex(fun.x=mode)

我认为这给了我想要的东西(即用 0 到 9 的颜色填充每个六边形),但色标看起来是连续的,我不知道如何使它使用离散的色标。

output

对于额外的上下文,这里是数据的底层、更困惑的 View ,我试图通过使用六边形来平滑它:
 qplot(data=clusters, xpos, ypos, color=factor(cluster))

output2

最佳答案

我不知道你的 stat_summary_hex(fun.x=mode)正在做,但我很确定这不是您的想法( mode 给出了对象的存储模式,而不是统计模式,而 fun.xstat_summary_hex 的任何形式参数都不匹配)。尝试这个。它将每个 bin 中的观察结果制成表格,并拉出最大计数的标签。

ggplot(clusters, aes(x=xpos, y=ypos, z=cluster)) + stat_summary_hex(fun = function(x) {
    tab <- table(x)
    names(tab)[which.max(tab)]
})

Hexbinned clusters

关于r - 使用 stat_summary_hex 以离散色标显示最频繁的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17371591/

相关文章:

r - 在我发现并修复了 CRAN 包中的一些错误并且作者没有响应后该怎么办?

R函数按列分类?

r - geom_raster中值范围内的非线性颜色分布

git - 可视化 git 存储库的进度

r - Z 标准化使得 PC1 和 PC2 在此 PCA 分析中完全相同 : Why?

r - 如何更改 Donut ggplot 图中的plot.background?

r - 在 y 轴标签旁边添加自定义符号

r - 带 Plotly 的树形图 : Blank Screen?

javascript - Google 可视化 API 的替代品

r - 如何在 ggplot 轴刻度标签中使用自然对数而不是 log10?