首页 > 解决方案 > igraph 使用的调色板是什么?

问题描述

我的可重现示例如下:

get.vertex.attribute(g)
$name
 [1] "LV" "Ve" "Ca" "Ai" "BN" "EN" "Or" "So" "SG" "Bo" "AX" "Sa" "To" "Pe" "Da" "He" "VI" "Ke" "Va" "At" "Ac" "Mi"
[23] "Cr" "Le" "Pu" "Re" "Te" "C." "N." "Y." "M." "D." "F." "L." "P." "S." "B." "J." "I." "A." "H." "R." "E." "O."

$color
 [1] 1 1 1 1 1 2 3 1 1 3 1 3 3 3 1 4 3 5 3 1 1 6 2 6 1 3 3 1 1 1 1 3 1 2 3 1 5 1 2 3 3 4 3 6

就我而言,以下代码:

library("igraph")
vertices<-data.frame("name" = unique(unlist(relations)))
g = graph.data.frame(relations, directed=F, vertices=vertices)
vertices$group = edge.betweenness.community(g)$membership 
V(g)$color <- vertices$group
plot(g,layout=layout.auto,vertex.size=6,  vertex.label.cex = 0.8)

给出了这个图表: 在此处输入图像描述 颜色 1 似乎是橙色,2 是浅蓝色,等等......然而

palette()
[1] "black"   "red"     "green3"  "blue"    "cyan"    "magenta" "yellow"  "gray"   
>

那么igraph使用的调色板是什么?我很好奇,因为我想在另一个包中使用它,该包只将颜色名称作为输入,并且似乎没有将 V(g)$color 向量识别为输入的候选者(即仅输出黑色)。

标签: igraph

解决方案


简短的回答是categorical_pal(8)

全文

如果您查看帮助页面?igraph.plotting并搜索palette您会发现。

调色板

用于顶点颜色的调色板。默认值为 categorical_pal,这是一个对色盲友好的分类调色板。有关详细信息和其他调色板,请参见其手册页。

帮助页面?categorical_pal说:

这是来自http://jfly.iam.u-tokyo.ac.jp/color的色盲友好调色板 。它有 8 种颜色。

我们可以快速演示一下。

library(igraph)
x = 1:8
y = rep(1,8)
plot(x,y, pch=20, cex=10, col=categorical_pal(8), xlim=c(0.5,8.5))

在此处输入图像描述


推荐阅读