【问题标题】:Fix nodes overlap in Cytoscape (RCy3)修复 Cytoscape (RCy3) 中的节点重叠
【发布时间】:2021-12-29 08:56:40
【问题描述】:

我需要在节点上绘制带有标签的网络。节点名称的长度有时很短,有时很长。数据是动态生成的,所以每次都是随机的。

这是我的数据示例:

links=data.frame(
    source=c("AAAAAAAAAAAAAAAAAAAAAAAA","AAAAAAAAAAAAAAAAAAAAAAAA", "AAAAAAAAAAAAAAAAAAAAAAAA", "AAAAAAAAAAAAAAAAAAAAAAAA", "AAAAAAAAAAAAAAAAAAAAAAAA","J", "BBBBBBBBB",
             "BBBBBBBBBBBBBBBBBBBBB", "CCCCCCCCCCC", "CCCCCCCCCCC", "D","IIIIIIII"),
    target=c("BBBBBBBBBBBBBBBBBBBBB","BBBBBBBBBBBBBBBBBBBBB", "CCCCCCCCCCC", "D", 
             "J","AAAAAAAAAAAAAAAAAAAAAAAA","E", "F", "G", "H", "IIIIIIII","IIIIIIII")
)


library(RCy3)

nodes <- data.frame (id = unique(c(links$source,links$target)) )

createNetworkFromDataFrames(nodes, links, title="my first network", collection="DataFrame Example")

setNodeShapeDefault('RECTANGLE', style.name = "default")
setEdgeTargetArrowShapeDefault("ARROW", style.name = "default")
setNodeBorderColorDefault("#000000", style.name = "default")
setNodeColorDefault("#89D0F5", style.name = "default")
setNodeWidthDefault(130, style.name = "default")

exportImage("c:\\temp\\network_01.svg", 'svg')

这是我的结果图片:

标签不适合矩形,节点重叠。上部链接超出情节边缘。如何避免?

【问题讨论】:

    标签: r cytoscape


    【解决方案1】:

    所以,您实际上是在问两个问题:

    1. 如何避免标签不适合节点:有两种方法。首先,由于您知道标签的长度,您可以轻松更改节点的宽度。其次,您可以使用 NODE_LABEL_WIDTH 属性包装标签并将其设置为节点的宽度。
    2. 如何确保上面的链接在图中:您需要做一个合适的内容,以便在添加完所有节点后调整图的大小。您可以使用 RCy3 fitContent() 方法或重做布局来做到这一点。

    【讨论】:

      猜你喜欢
      • 2016-07-13
      • 1970-01-01
      • 2015-08-10
      • 1970-01-01
      • 1970-01-01
      • 2023-03-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多