我正在寻找一种方法来绘制我的数据。假设您有许多生成排名列表的算法,以及一个将列表中的每个项目识别为真或假的分类器。我怎样才能生成一个图表,将每个算法放在一起,每个等级都有自己的正方形堆叠如下:
__ __
3 |TP| |FP|
|__| |__|
2 |FP| |TP|
|__| |__|
1 |TP| |TP|
|__| |__|
a b
例如,TP 可以涂成绿色,FP 可以涂成红色。
您可以ggplot2
用于绘制堆积条形图。然而,比较算法的真/假阳性/阴性的更好方法是精确/召回(与选择性/特异性相同)图表。
使用 base R 函数可以很容易地完成它heatmap()
。
尝试这个:
# Dataframe with TRUE/FALSE items
mydf <- data.frame(a = c(T, F, T), b = c(T, T,F))
# Transform booleans into 1s and 0s, and plot heatmap
heatmap(apply(mydf, 2, as.integer),
col = c("red", "lightgreen"),
xlab = "Algorithm",
ylab = "Item",
main = "False positives in red",
Rowv = NA,
Colv = NA,
scale = "column")