r - 如何用栅格图表示数据并显示 R 中的某些数据点是好/坏?
问题描述
我正在处理表示 n 个信号及其在 m 个不同时刻(m ~ 1500,n ~ 50)中的值的数据。我想出了一个算法来检查哪些值代表每个信号,哪些不是,所以我得到 n 个信号和 m 个 True/False 值,它们告诉我该值是否具有代表性。我也知道真/假值分组得很好,这意味着如果我取两个附近的值,它们相同的概率比它们不同的概率要高得多。我在R工作。
我想可视化这个算法输出的结果。为了做到这一点,我试图做一个光栅图,每个点都充满了信号的值,每组真/假值都有一个可见的边界。与下图类似,但略有不同。
我也愿意接受有关如何可视化这些数据的其他方法的建议。
我有一个矩阵 n * m 为我提供数据以制作光栅图,另一个矩阵 n * m (真/假值)告诉我哪些点是好/坏的。
下面的代码是我得到的最接近答案的代码,但是组内仍然有一个寄宿生,这对我不起作用。
library(ggplot2)
n = 5
m = 10
dataMatrix <- data.frame(cbind(1:m, matrix(runif(n * m), ncol = n)))
trueMatrix <- data.frame(cbind(1:m, matrix(rep(c(T, T, T, F, F), m), ncol = n)))
dataMatrix <- gather(dataMatrix, key = Signal, value = Value, -1)
trueMatrix <- gather(trueMatrix, key = TrueFalse, value = Value, -1)
dataMatrix$Representativeness <- trueMatrix$Value
dataMatrix$Signal <- as.integer(gsub("X", "", dataMatrix$Signal))
ggplot(data = dataMatrix) +
geom_raster(mapping = aes(x = X1, y = Signal, fill = Value)) +
scale_fill_gradient2(low = "blue", high = "red", na.value = "black", name = "") +
geom_rect(mapping = aes(xmin = X1 - 0.5, xmax = X1 + 0.5,
ymin = Signal - 0.5, ymax = Signal + 0.5),
size = 1, fill = NA, colour = dataMatrix$Representativeness)
解决方案
推荐阅读
- amazon-ec2 - 配置 EC2 WAF ACL 时面临的问题
- git - 显示对曾经是 Line 的更改
- vb.net - 如何验证组合选择值(字符)范围
- xamarin - 当单击具有手势识别器的元素时,有没有一种方法可以向用户提供反馈?
- sql - 在 SAP HANA 中使用 PAL 的 APRIORI 函数时,为什么我的结果表没有显示任何结果?
- r - 删除增量时间内的重复事件
- c# - 如果我更改 Azure DevOps 代理,为什么我的 MSbuild 命令路径无法访问?
- python - 如何将一个函数的变量值赋给另一个函数?
- javascript - 或者正则表达式的交替返回比它应该的更多的结果?
- python - 如何在循环中链接堆栈