r - 更改 tkplot (igraph,R) 的背景颜色

标签 r igraph tkplot

我目前有一个用 tkplot() 绘制的网络。最初,我将这些图保存为 png,但它们太压缩了,我喜欢 tkplot 的屏幕截图的样子。反正有没有让情节的背景变白?而不是浅灰色。

最佳答案

两点澄清事情。

如果 PNG 太拥挤,您可以创建一个更大的 PNG 文件,只需在 png() 调用中指定 widthheight .或者你也可以让顶点变小。

tkplot() 的目的是有时手动调整顶点坐标更容易。思路是调用tkplot(),调整坐标,通过tkplot.getcoords()查询调整后的坐标,然后和plot()一起使用,因为 plot()tkplot() 灵活得多。

实际上可以在tkplot()中改变背景颜色,方法如下:

library(igraph)

g <- graph.ring(10)
id <- tkplot(g)
tkconfigure(igraph:::.tkplot.get(id)$canvas, "bg"="lightyellow")

screenshot

在 igraph 的下一个版本中,可以通过 tkplot.canvas() 查询 Canvas ,因此您不需要使用内部的 igraph:::.tkplot .get() 命令。

不幸的是, Canvas 的背景颜色是小部件的一个属性,所以当你将 Canvas 导出到 EPS 时,它会被忽略。解决这个问题的方法需要绘制一个具有所需颜色的大矩形,并将其放置在 Canvas 的顶点和边缘下方。这绝对是可能的,但是通过 tkplot.getcoords() 查询坐标然后使用 plot() 更容易。

关于r - 更改 tkplot (igraph,R) 的背景颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17627052/

相关文章:

r - 在 igraph 中存储顶点的顺序

r - 多有向边 igraph

r - 通过knitr和igraph在 latex 中的tkplot

R:合并具有多个条件和多个逻辑运算符的数据帧

r - 使用 ggplotly() 时如何保留字幕

python - 如何在python中重新启动随机游走

mysql - 如何在 R 中执行 dbGetQuery for 循环

r - 将创建新行的转换应用到 R 中的 data.table

python,igraph 处理顶点重新编号