[BioC] Edge attributes in Rgraphviz

Srinivas Iyyer srini_iyyer_bio at yahoo.com
Mon Jan 28 17:23:22 CET 2008

Dear group, 

I am finding difficult to control edge size and color
in the following piece of code. 
natt = makeNodeAttrs(
                     shape = "ellipse", 
                     fillcolor= "goldenrod1",
                     label = substr(nodes(g4),6, 10)
>lgGO = agopen(
             recipEdges = "distinct", 
             layoutType = "dot",
             nodeAttrs = natt, 
             name = "",

Error in buildEdgeList(graph, recipEdges, edgeAttrs,
subGList, attrs$edge) : 
  STRING_ELT() can only be applied to a 'character
vector', not a 'NULL'

Here in agopen, I made a edgeAttrs list object with 
color and weight attributes and I get above error. 

Instead, I tried like the following:

> x = buildEdgeList(g4,
Error in buildEdgeList(g4, recipEdges = "distinct",
edgeAttrs = list(c(color = "green"))) : 
  STRING_ELT() can only be applied to a 'character
vector', not a 'NULL'

Also when I just make a buildEdgeList object, I can
make it with wight=1 (which is default)

>x = buildEdgeList(g4,recipEdges='distinct')
>y = unlist(x)
> y[[1]]
An object of class “pEdge”
Slot "from":
[1] "GO:0030199"

Slot "to":
[1] "GO:0030198"

Slot "attrs":
[1] "open"

[1] "1"

[1] "forward"

Slot "subG":
[1] 0

How can I control, the edge global parameters. 
I do not see makeEdgeAttr function just like
makeNodeAttr. Could some one help me here please. A
working code is given at bottom. 

> makeEdgeAttrs
Error: object "makeEdgeAttrs" not found

##### code that works#######
g4 <- GOGraph(summary(hgOver)$GOBPID, GOBPPARENTS)

natt = makeNodeAttrs(g4, shape = "ellipse", fillcolor
= "goldenrod1",size=0,fontsize=8,label =
substr(nodes(g4),6, 10))

natt$fillcolor[summary(hgOver)$GOBPID] = "red" 

lgGO = agopen(g4, recipEdges = "distinct", layoutType
= "dot",nodeAttrs = natt, name =


###### end of code that works #######

Never miss a thing.  Make Yahoo your home page.

More information about the Bioconductor mailing list