cytoscape / RCy3

New version of RCy3, redesigned and collaboratively maintained by Cytoscape developer community
MIT License
49 stars 20 forks source link

Missing edge attributes in networks with multiple edges #56

Closed SuhasSrinivasan closed 5 years ago

SuhasSrinivasan commented 5 years ago

This issue #41 still exists in RCy3 - 2.2.6 and it is quite severe. For a network with 200 vertices and 2446 edges, the edge attributes on 1/3rd of edges (that are multiple between any two vertices) are missing. Please find attached a screenshot with edges that are missing the e_color attribute (the data.key.column also becomes NULL for these edges). The data file to replicate the issue is also attached.

R - 3.5.2 igraph - 1.2.4 Cytoscape - 3.7.1 Java - 1.8

library(igraph)
library(RCy3)

frame1 = read.table("module_df.txt", sep = "\t", header = T)
head(frame1)
module = graph_from_data_frame(frame1[, 1:2], directed = F)
module = set.edge.attribute(module, "e_color", index = E(module), value = frame1$e_color)
summary(module)

cytoscapePing()
createNetworkFromIgraph(module)
layoutNetwork("degree-circle")

Screenshot:
Cytoscape Table View

Data:
module_df.txt

AlexanderPico commented 5 years ago

Thank you for the test case. This is fixed in the upcoming 2.4.0. Available now via github:

install.packages("devtools")
library(devtools)
install_github('cytoscape/RCy3', build_vignettes=TRUE)
library(RCy3)
SuhasSrinivasan commented 5 years ago

Thank you for the quick update! The edge attributes on the multiple edges along with the data.key.column have values now. RCy3 - 2.3.12