根据7个不同的分类值对颜色编码节点进行问题

问题描述 投票:0回答:1

我正在创建一个基于Twitter数据集的社交网络图。我计算了推文的情绪分析分数,我想根据情绪分数对节点进行颜色编码。我想要使​​用7个不同的分类值我希望使用不同的颜色来表示每个情绪分数。情绪值是“中性”,“有点积极”,“积极”,“非常积极”,“有些消极”,“消极”和“非常消极”。我在R中使用igraph来完成这个,我得到了一个更简单的版本,只有两个情绪状态正在工作,即“正面”和“负面”。这是我用于该图形的代码:

V(rt_graph)$color <- ifelse(tweets[V(rt_graph), 2] == "positive", "blue", "red")

我试图为不同情绪值的每个节点分配不同的颜色,但我还没有成功地弄清楚如何做到这一点。请有人请我指出正确的方向吗?以下是我尝试使用的内容:

V(rt_graph)$color(tweets$score[V(rt_graph) == 'Negative']) <- 'orangered3'
r igraph
1个回答
0
投票

您没有提供任何数据,因此我将使用合成图表进行说明。

library(igraph)
set.seed(1234)
g = erdos.renyi.game(40, 0.15)
SLevels = c("neutral", "somewhat positive", "positive", 
    "very positive", "somewhat negative", "negative", "very negative" )
sentiment = factor(sample(SLevels, 40, replace=T))

现在为七种情绪分配七种不同的颜色,你可以使用:

ColorList = c("yellow", "darkblue", "lightblue", "green", 
    "orange", "pink", "red")
V(g)$color = ColorList[sentiment]
plot(g, vertex.size=10, vertex.label="")

Graph with multi-colored nodes

由于情绪是在我的图表中随机分配的,因此没有任何实际意义。希望在您的数据中更有意义。

© www.soinside.com 2019 - 2024. All rights reserved.