Author: pwang
Date: 2011-10-28 18:04:54 -0700 (Fri, 28 Oct 2011)
New Revision: 27336
Modified:
csplugins/trunk/ucsd/ruschein/PanGIA-impl/src/main/java/org/idekerlab/PanGIAPlugin/DetailedNetworkCreator.java
csplugins/trunk/ucsd/ruschein/PanGIA-impl/src/main/java/org/idekerlab/PanGIAPlugin/NestedNetworkCreator.java
csplugins/trunk/ucsd/ruschein/PanGIA-impl/src/main/java/org/idekerlab/PanGIAPlugin/PanGIAEdgeContextMenuListener.java
csplugins/trunk/ucsd/ruschein/PanGIA-impl/src/main/java/org/idekerlab/PanGIAPlugin/PanGIANodeContextMenuListener.java
Log:
work in progress
Modified:
csplugins/trunk/ucsd/ruschein/PanGIA-impl/src/main/java/org/idekerlab/PanGIAPlugin/DetailedNetworkCreator.java
===================================================================
---
csplugins/trunk/ucsd/ruschein/PanGIA-impl/src/main/java/org/idekerlab/PanGIAPlugin/DetailedNetworkCreator.java
2011-10-29 01:04:05 UTC (rev 27335)
+++
csplugins/trunk/ucsd/ruschein/PanGIA-impl/src/main/java/org/idekerlab/PanGIAPlugin/DetailedNetworkCreator.java
2011-10-29 01:04:54 UTC (rev 27336)
@@ -5,31 +5,39 @@
import org.idekerlab.PanGIAPlugin.networks.SFNetwork;
-import giny.model.GraphPerspective;
-import giny.model.Node;
-import cytoscape.data.CyAttributes;
-import cytoscape.layout.CyLayoutAlgorithm;
-import cytoscape.view.*;
-import cytoscape.visual.VisualStyle;
-import cytoscape.*;
+import org.cytoscape.model.CyNetwork;
+import org.cytoscape.model.CyNode;
+import org.cytoscape.model.CyEdge;
+import org.cytoscape.model.CyTable;
+import org.cytoscape.model.CyTableUtil;
+import org.cytoscape.view.model.CyNetworkView;
+import org.cytoscape.view.vizmap.VisualStyle;
+import java.util.Set;
+import org.cytoscape.view.layout.CyLayoutAlgorithm;
+
+
public class DetailedNetworkCreator
{
@SuppressWarnings("unchecked")
public static void createDetailedView(CyNetworkView view)
{
- if (view.getSelectedNodeIndices().length==0) return;
+
+ List<CyNode> nodes_selected =
CyTableUtil.getNodesInState(view.getModel(), CyNetwork.SELECTED, true);
- if (view.getSelectedNodeIndices().length==1)
+ if (nodes_selected.size()==0) return;
+
+ if (nodes_selected.size()==1)
{
-
goToNestedNetwork(Cytoscape.getRootGraph().getNode(view.getSelectedNodeIndices()[0]));
+
//goToNestedNetwork(Cytoscape.getRootGraph().getNode(view.getSelectedNodeIndices()[0]));
+ goToNestedNetwork(nodes_selected.get(0));
System.out.println("Going to nested network.");
return;
}
VisualStyleObserver.setOverviewView(view);
- String netID = view.getNetwork().getIdentifier();
+ String netID = view.getModel().getCyRow().get("name",
String.class);
PanGIAOutput output = PanGIAPlugin.output.get(netID);
@@ -42,51 +50,65 @@
String title = "Detailed View";
- int[] selected = view.getSelectedNodeIndices();
+ //int[] selected = view.getSelectedNodeIndices();
+ List<CyNode> nodes_selected2 =
CyTableUtil.getNodesInState(view.getModel(), CyNetwork.SELECTED, true);
- if (selected.length<=3)
+ if (nodes_selected2.size()<=3)
{
- title =
Cytoscape.getRootGraph().getNode(selected[0]).getIdentifier();
+ title = nodes_selected2.get(0).getCyRow().get("name",
String.class); //Cytoscape.getRootGraph().getNode(selected[0]).getIdentifier();
- for (int ni=1;ni<selected.length;ni++)
- title+=" |
"+Cytoscape.getRootGraph().getNode(selected[ni]).getIdentifier();
+ for (int ni=1;ni<nodes_selected2.size();ni++)
+ title+=" |
"+nodes_selected2.get(ni).getCyRow().get("name",String.class);
//getIdentifier();
}
String name = findNextAvailableNetworkName(title);
- CyNetwork detailedNetwork = Cytoscape.createNetwork(name,
/* create_view = */false);
- CyAttributes networkAttr = Cytoscape.getNetworkAttributes();
- networkAttr.setAttribute(detailedNetwork.getIdentifier(),
VisualStyleObserver.NETWORK_TYPE_ATTRIBUTE_NAME, NetworkType.DETAILED.name());
-
networkAttr.setUserVisible(VisualStyleObserver.NETWORK_TYPE_ATTRIBUTE_NAME,
false);
-
networkAttr.setUserEditable(VisualStyleObserver.NETWORK_TYPE_ATTRIBUTE_NAME,
false);
+ //CyNetwork detailedNetwork = Cytoscape.createNetwork(name,
/* create_view = */false);
+ CyNetwork detailedNetwork =
ServicesUtil.cyNetworkFactoryServiceRef.getInstance();
+
+ CyTable networkAttr = detailedNetwork.getDefaultNetworkTable();
//Cytoscape.getNetworkAttributes();
+ //networkAttr.setAttribute(detailedNetwork.getIdentifier(),
VisualStyleObserver.NETWORK_TYPE_ATTRIBUTE_NAME, NetworkType.DETAILED.name());
+
detailedNetwork.getCyRow().set(VisualStyleObserver.NETWORK_TYPE_ATTRIBUTE_NAME,
NetworkType.DETAILED.name());
+
//networkAttr.createColumn(VisualStyleObserver.NETWORK_TYPE_ATTRIBUTE_NAME,
String.class, false);
+
//networkAttr.setUserVisible(VisualStyleObserver.NETWORK_TYPE_ATTRIBUTE_NAME,
false);
+
//networkAttr.setUserEditable(VisualStyleObserver.NETWORK_TYPE_ATTRIBUTE_NAME,
false);
+
//Populate network
//Nodes
- for (int ni : selected)
+ //for (int ni : selected)
+ for (CyNode ni: nodes_selected2)
{
- GraphPerspective nn =
Cytoscape.getRootGraph().getNode(ni).getNestedNetwork();
+ CyNetwork nn = ni.getNetwork();
if (nn!=null)
{
for (int ni2 : nn.getNodeIndicesArray())
detailedNetwork.addNode(ni2);
+
+// List<CyNode> nn_nodelist = nn.getNodeList();
+// for (CyNode nn_node: nn_nodelist){
+//
detailedNetwork.addNode(nn_node.getSUID());
+// }
}
}
//Edges
- final CyAttributes edgeAttributes =
Cytoscape.getEdgeAttributes();
+ final CyTable edgeAttributes = Cytoscape.getEdgeAttributes();
- List<CyNode> nodes = detailedNetwork.nodesList();
+ List<CyNode> nodes = detailedNetwork.getNodeList();
// Add the edges induced by "origPhysNetwork" to our new nested
network.
List<CyEdge> edges = (List<CyEdge>)
origPhysNetwork.getConnectingEdges(getIntersectingNodes(origPhysNetwork,
nodes));
for (final CyEdge edge : edges)
{
- final Double attrValue =
edgeAttributes.getDoubleAttribute(edge.getIdentifier(), physEdgeAttrName);
+ //final Double attrValue =
edgeAttributes.getDoubleAttribute(edge.getCyRow().get("name", String.class),
physEdgeAttrName);
+ final Double attrValue
=edge.getCyRow().get(physEdgeAttrName, Double.class);
if (attrValue != null)
{
detailedNetwork.addEdge(edge);
-
edgeAttributes.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type",
"Physical");
+
//edgeAttributes.setAttribute(edge.getCyRow().get("name", String.class),
"PanGIA.Interaction Type", "Physical");
+ edge.getCyRow().set("PanGIA.Interaction Type",
"Physical");
}
}
@@ -94,60 +116,91 @@
edges = (List<CyEdge>)
origGenNetwork.getConnectingEdges(getIntersectingNodes(origGenNetwork, nodes));
for (final CyEdge edge : edges)
{
- final Double attrValue =
edgeAttributes.getDoubleAttribute(edge.getIdentifier(), genEdgeAttrName);
+ //final Double attrValue =
edgeAttributes.getDoubleAttribute(edge.getCyRow().get("name", String.class),
genEdgeAttrName);
+ final Double attrValue
=edge.getCyRow().get(genEdgeAttrName, Double.class);
if (attrValue != null)
{
detailedNetwork.addEdge(edge);
- Object existingAttribute =
edgeAttributes.getAttribute(edge.getIdentifier(), "PanGIA.Interaction Type");
-
+ //Object existingAttribute =
edgeAttributes.getAttribute(edge.getCyRow().get("name", String.class),
"PanGIA.Interaction Type");
+ Object existingAttribute =
edge.getCyRow().get("PanGIA.Interaction Type", String.class);
if (existingAttribute==null ||
!existingAttribute.equals("Physical"))
{
if (output.isSigned())
{
- if (attrValue<0)
edgeAttributes.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type",
"Genetic(negative)");
- else
edgeAttributes.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type",
"Genetic(positive)");
- }else
edgeAttributes.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type",
"Genetic");
+ if (attrValue<0) {
+
//edgeAttributes.setAttribute(edge.getCyRow().get("name",String.class),
"PanGIA.Interaction Type", "Genetic(negative)");
+
edge.getCyRow().set("PanGIA.Interaction Type", "Genetic(negative)");
+ }
+ else {
+
//edgeAttributes.setAttribute(edge.getCyRow().get("name", String.class),
"PanGIA.Interaction Type", "Genetic(positive)");
+
edge.getCyRow().set("PanGIA.Interaction Type", "Genetic(positive)");
+ }
+ }else {
+
//edgeAttributes.setAttribute(edge.getCyRow().get("name", String.class),
"PanGIA.Interaction Type", "Genetic");
+
edge.getCyRow().set("PanGIA.Interaction Type", "Genetic");
+ }
}
else
if (output.isSigned())
{
- if (attrValue<0)
edgeAttributes.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type",
"Physical&Genetic(negative)");
- else
edgeAttributes.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type",
"Physical&Genetic(positive)");
- }else
edgeAttributes.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type",
"Physical&Genetic");
+ if (attrValue<0)
+ {
+
//edgeAttributes.setAttribute(edge.getCyRow().get("name", String.class),
"PanGIA.Interaction Type", "Physical&Genetic(negative)");
+
edge.getCyRow().set("PanGIA.Interaction Type", "Physical&Genetic(negative)");
+ }
+ else
+ {
+
//edgeAttributes.setAttribute(edge.getCyRow().get("name", String.class),
"PanGIA.Interaction Type", "Physical&Genetic(positive)");
+
edge.getCyRow().set("PanGIA.Interaction Type", "Physical&Genetic(positive)");
+ }
+ }else
+ {
+
//edgeAttributes.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type",
"Physical&Genetic");
+
edge.getCyRow().set("PanGIA.Interaction Type", "Physical&Genetic");
+ }
-
//if (existingAttribute==null ||
!existingAttribute.equals("Physical"))
edgeAttributes.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type",
"Genetic");
//else
edgeAttributes.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type",
"Physical&Genetic");
}
}
- CyNetworkView theView =
Cytoscape.createNetworkView(detailedNetwork);
+ CyNetworkView theView =
ServicesUtil.cyNetworkViewFactoryServiceRef.getNetworkView(detailedNetwork,
false);
+
+
DetailedViewLayout.layout(theView, view);
- theView.setVisualStyle(VisualStyleObserver.VS_MODULE_NAME);
-
Cytoscape.getVisualMappingManager().setVisualStyle(Cytoscape.getVisualMappingManager().getCalculatorCatalog().getVisualStyle(VisualStyleObserver.VS_MODULE_NAME));
- theView.redrawGraph(false, true);
+ //theView.setVisualStyle(VisualStyleObserver.VS_MODULE_NAME);
+
+// VisualStyle vs =
Cytoscape.getVisualMappingManager().getCalculatorCatalog().getVisualStyle(VisualStyleObserver.VS_MODULE_NAME);
+// ServicesUtil.visualMappingManagerRef.setVisualStyle(vs,
theView);
+ //Cytoscape.getVisualMappingManager().setVisualStyle();
+
+ theView.updateView(); //.redrawGraph(false, true);
}
- public static void goToNestedNetwork(Node n)
+ public static void goToNestedNetwork(CyNode n)
{
- if (n.getNestedNetwork() == null)
+ if (n.getNetwork() == null)
return;
- CyNetwork nestedNetwork = (CyNetwork)n.getNestedNetwork();
+ CyNetwork nestedNetwork = (CyNetwork)n.getNetwork();
- CyNetworkView theView =
Cytoscape.getNetworkView(nestedNetwork.getIdentifier());
- if (theView == null || theView.getIdentifier() == null)
+ CyNetworkView theView =
ServicesUtil.cyNetworkViewManagerServiceRef.getNetworkView(nestedNetwork.getSUID());
+ //if (theView == null || theView.getIdentifier() == null)
+ if (theView == null)
{
- theView = Cytoscape.createNetworkView(nestedNetwork);
- CyLayoutAlgorithm alg =
cytoscape.layout.CyLayouts.getLayout("force-directed");
- theView.applyLayout(alg);
- theView.redrawGraph(false, false);
+ theView =
ServicesUtil.cyNetworkViewFactoryServiceRef.getNetworkView(nestedNetwork);
+
+ CyLayoutAlgorithm alg =
ServicesUtil.cyLayoutsServiceRef.getLayout("force-directed");
+ alg.setNetworkView(theView);
+ ServicesUtil.taskManagerServiceRef.execute(alg);
+ theView.updateView();
}
- Cytoscape.getDesktop().setFocus(nestedNetwork.getIdentifier());
+ //ServicesUtil.cySwingApplicationServiceRef.getJFrame().setf
+ //Cytoscape.getDesktop().setFocus(nestedNetwork.getIdentifier());
}
private static String findNextAvailableNetworkName(final String
initialPreference) {
@@ -169,8 +222,10 @@
* no network w/ this title.
*/
private static CyNetwork getNetworkByTitle(final String networkTitle) {
- for (final CyNetwork network : Cytoscape.getNetworkSet()) {
- if (network.getTitle().equals(networkTitle))
+ Set<CyNetwork> networks =
ServicesUtil.cyNetworkManagerServiceRef.getNetworkSet();
+ for (final CyNetwork network : networks) {
+ String title = network.getCyRow().get("name",
String.class);
+ if (title.equals(networkTitle))
return network;
}
Modified:
csplugins/trunk/ucsd/ruschein/PanGIA-impl/src/main/java/org/idekerlab/PanGIAPlugin/NestedNetworkCreator.java
===================================================================
---
csplugins/trunk/ucsd/ruschein/PanGIA-impl/src/main/java/org/idekerlab/PanGIAPlugin/NestedNetworkCreator.java
2011-10-29 01:04:05 UTC (rev 27335)
+++
csplugins/trunk/ucsd/ruschein/PanGIA-impl/src/main/java/org/idekerlab/PanGIAPlugin/NestedNetworkCreator.java
2011-10-29 01:04:54 UTC (rev 27336)
@@ -7,19 +7,16 @@
import org.idekerlab.PanGIAPlugin.networks.linkedNetworks.TypedLinkEdge;
import org.idekerlab.PanGIAPlugin.networks.linkedNetworks.TypedLinkNetwork;
import org.idekerlab.PanGIAPlugin.networks.linkedNetworks.TypedLinkNodeModule;
-import cytoscape.CyEdge;
-import cytoscape.CyNetwork;
-import cytoscape.CyNode;
-import cytoscape.Cytoscape;
-import cytoscape.CytoscapeInit;
-import cytoscape.data.CyAttributes;
-import cytoscape.data.Semantics;
-import cytoscape.layout.CyLayoutAlgorithm;
-import cytoscape.layout.CyLayouts;
-import cytoscape.task.TaskMonitor;
-import cytoscape.util.PropUtil;
-import cytoscape.view.CyNetworkView;
-import cytoscape.visual.VisualStyle;
+import org.cytoscape.model.CyEdge;
+import org.cytoscape.model.CyNetwork;
+import org.cytoscape.model.CyNode;
+import org.cytoscape.model.CyTable;
+//import cytoscape.data.Semantics;
+//import cytoscape.util.PropUtil;
+import org.cytoscape.view.model.CyNetworkView;
+import org.cytoscape.view.vizmap.VisualStyle;
+import org.cytoscape.work.TaskMonitor;
+import org.cytoscape.view.layout.CyLayoutAlgorithm;
/**
@@ -126,11 +123,11 @@
private final PriorityQueue<NetworkAndScore> networksOrderedByScores =
new PriorityQueue(
100);
- VisualStyle moduleVS =
Cytoscape.getVisualMappingManager().getCalculatorCatalog().
-
getVisualStyle(VisualStyleObserver.VS_MODULE_NAME);
+// VisualStyle moduleVS =
Cytoscape.getVisualMappingManager().getCalculatorCatalog().
+//
getVisualStyle(VisualStyleObserver.VS_MODULE_NAME);
- private final CyAttributes nodeAttribs = Cytoscape.getNodeAttributes();
- private final CyAttributes edgeAttribs = Cytoscape.getEdgeAttributes();
+ private final CyTable nodeAttribs = Cytoscape.getNodeAttributes();
+ private final CyTable edgeAttribs = Cytoscape.getEdgeAttributes();
public static List<String> getEdgeAttributeNames()
{
@@ -175,16 +172,20 @@
)
{
// Network attributes created here is required for managing
Visual Styles.
- final CyAttributes networkAttr =
Cytoscape.getNetworkAttributes();
+ final CyTable networkAttr = Cytoscape.getNetworkAttributes();
moduleToCyNodeMap = new HashMap<TypedLinkNodeModule<String,
BFEdge>, CyNode>();
- overviewNetwork = Cytoscape.createNetwork(
findNextAvailableNetworkName(networkName), /* create_view = */false);
- networkAttr.setAttribute(overviewNetwork.getIdentifier(),
VisualStyleObserver.NETWORK_TYPE_ATTRIBUTE_NAME, NetworkType.OVERVIEW.name());
-
networkAttr.setUserVisible(VisualStyleObserver.NETWORK_TYPE_ATTRIBUTE_NAME,
false);
-
networkAttr.setUserEditable(VisualStyleObserver.NETWORK_TYPE_ATTRIBUTE_NAME,
false);
+ //overviewNetwork = Cytoscape.createNetwork(
findNextAvailableNetworkName(networkName), /* create_view = */false);
+ overviewNetwork =
ServicesUtil.cyNetworkFactoryServiceRef.getInstance();
+ overviewNetwork.getCyRow().set("name",
findNextAvailableNetworkName(networkName));
- taskMonitor.setStatus("5. Generating Cytoscape networks");
+ //networkAttr.setAttribute(overviewNetwork.getIdentifier(),
VisualStyleObserver.NETWORK_TYPE_ATTRIBUTE_NAME, NetworkType.OVERVIEW.name());
+
overviewNetwork.getCyRow().set(VisualStyleObserver.NETWORK_TYPE_ATTRIBUTE_NAME,
NetworkType.OVERVIEW.name());
+
//networkAttr.setUserVisible(VisualStyleObserver.NETWORK_TYPE_ATTRIBUTE_NAME,
false);
+
//networkAttr.setUserEditable(VisualStyleObserver.NETWORK_TYPE_ATTRIBUTE_NAME,
false);
+
+ taskMonitor.setStatusMessage("5. Generating Cytoscape
networks");
int nodeIndex = 1;
double maxScore = Double.NEGATIVE_INFINITY;
@@ -210,37 +211,48 @@
}
- final CyEdge newEdge = Cytoscape.getCyEdge(sourceNode,
targetNode, Semantics.INTERACTION, COMPLEX_INTERACTION_TYPE, /* create =
*/true);
- edgeAttribs.setAttribute(newEdge.getIdentifier(),
REFERENCE_NETWORK_NAME_ATTRIB, origPhysNetwork.getTitle() + "/" +
origGenNetwork.getTitle());
- overviewNetwork.addEdge(newEdge);
+ //final CyEdge newEdge =
Cytoscape.getCyEdge(sourceNode, targetNode, Semantics.INTERACTION,
COMPLEX_INTERACTION_TYPE, /* create = */true);
+ CyEdge newEdge = overviewNetwork.addEdge(sourceNode,
targetNode, false);
+ newEdge.getCyRow().set(Semantics.INTERACTION,
COMPLEX_INTERACTION_TYPE);
+ //edgeAttribs.setAttribute(newEdge.getIdentifier(),
REFERENCE_NETWORK_NAME_ATTRIB, origPhysNetwork.getTitle() + "/" +
origGenNetwork.getTitle());
+ newEdge.getCyRow().set(REFERENCE_NETWORK_NAME_ATTRIB,
origPhysNetwork.getCyRow().get("name", String.class) + "/" +
origGenNetwork.getCyRow().get("name", String.class));
+ //overviewNetwork.addEdge(newEdge);
+
+
// Add various edge attributes.
final double edgeScore = edge.value().link();
- edgeAttribs.setAttribute(newEdge.getIdentifier(),
EDGE_SCORE,
- Double.valueOf(edgeScore));
+ //edgeAttribs.setAttribute(newEdge.getIdentifier(),
EDGE_SCORE,Double.valueOf(edgeScore));
+ newEdge.getCyRow().set(EDGE_SCORE,
Double.valueOf(edgeScore));
if (edgeScore > maxScore)
maxScore = edgeScore;
final double pValue = edge.value().linkMerge();
- edgeAttribs.setAttribute(newEdge.getIdentifier(),
EDGE_PVALUE, Double
- .valueOf(pValue));
+ //edgeAttribs.setAttribute(newEdge.getIdentifier(),
EDGE_PVALUE, Double.valueOf(pValue));
+ newEdge.getCyRow().set(EDGE_PVALUE,
Double.valueOf(pValue));
final int gConnectedness =
geneticNetwork.getConnectedness(sourceModule.asStringSet(),
targetModule.asStringSet());
-
edgeAttribs.setAttribute(newEdge.getIdentifier(),EDGE_GEN_EDGE_COUNT,
Integer.valueOf(gConnectedness));
+
//edgeAttribs.setAttribute(newEdge.getIdentifier(),EDGE_GEN_EDGE_COUNT,
Integer.valueOf(gConnectedness));
+ newEdge.getCyRow().set(EDGE_GEN_EDGE_COUNT,
Integer.valueOf(gConnectedness));
final int pConnectedness =
physicalNetwork.getConnectedness(sourceModule.asStringSet(),
targetModule.asStringSet());
-
edgeAttribs.setAttribute(newEdge.getIdentifier(),EDGE_PHYS_EDGE_COUNT,
Integer.valueOf(pConnectedness));
+
//edgeAttribs.setAttribute(newEdge.getIdentifier(),EDGE_PHYS_EDGE_COUNT,
Integer.valueOf(pConnectedness));
+ newEdge.getCyRow().set(EDGE_PHYS_EDGE_COUNT,
Integer.valueOf(pConnectedness));
- edgeAttribs.setAttribute(newEdge.getIdentifier(),
EDGE_SOURCE_SIZE, Integer.valueOf(sourceModule.size()));
- edgeAttribs.setAttribute(newEdge.getIdentifier(),
EDGE_TARGET_SIZE, Integer.valueOf(targetModule.size()));
+ //edgeAttribs.setAttribute(newEdge.getIdentifier(),
EDGE_SOURCE_SIZE, Integer.valueOf(sourceModule.size()));
+ newEdge.getCyRow().set(EDGE_SOURCE_SIZE,
Integer.valueOf(sourceModule.size()));
+ //edgeAttribs.setAttribute(newEdge.getIdentifier(),
EDGE_TARGET_SIZE, Integer.valueOf(targetModule.size()));
+ newEdge.getCyRow().set(EDGE_TARGET_SIZE,
Integer.valueOf(targetModule.size()));
+
final double density = edgeScore / (sourceModule.size()
* targetModule.size());
- edgeAttribs.setAttribute(newEdge.getIdentifier(),
EDGE_GEN_DENSITY, Double.valueOf(density));
+ //edgeAttribs.setAttribute(newEdge.getIdentifier(),
EDGE_GEN_DENSITY, Double.valueOf(density));
+ newEdge.getCyRow().set(EDGE_GEN_DENSITY,
Double.valueOf(density));
}
- edgeAttribs.setUserVisible(REFERENCE_NETWORK_NAME_ATTRIB,
false);
+ //edgeAttribs.setUserVisible(REFERENCE_NETWORK_NAME_ATTRIB,
false);
- taskMonitor.setStatus("5. Generating network views");
+ taskMonitor.setStatusMessage("5. Generating network views");
int networkViewCount = 0;
NetworkAndScore network;
final float percentIncrement = remainingPercentage /
networksOrderedByScores.size();
@@ -249,13 +261,14 @@
final boolean createView = networkViewCount++ <
MAX_NETWORK_VIEWS;
final CyNetwork nestedNetwork =
generateNestedNetwork(network.getNodeName(), network.getGenes(),
origPhysNetwork, origGenNetwork, physicalNetwork,geneticNetwork, createView,
networkAttr, isGNetSigned, geneticEdgeAttrName);
final CyNode node =
Cytoscape.getCyNode(network.getNodeName(), false);
- node.setNestedNetwork(nestedNetwork);
+ node.setNetwork(nestedNetwork);
percentCompleted += percentIncrement;
-
taskMonitor.setPercentCompleted(Math.round(percentCompleted));
+
taskMonitor.setProgress(Math.round(percentCompleted)/100.0);
}
- Cytoscape.createNetworkView(overviewNetwork);
+ //Cytoscape.createNetworkView(overviewNetwork);
+
ServicesUtil.cyNetworkViewFactoryServiceRef.getNetworkView(overviewNetwork);
applyNetworkLayout(overviewNetwork, cutoff, maxScore);
@@ -293,7 +306,7 @@
*/
private CyNode makeOverviewNode(final String nodeName,
final TypedLinkNodeModule<String, BFEdge> module,
- final CyAttributes nodeAttribs,
TypedLinkNetwork<String, Float> physicalNetwork, TypedLinkNetwork<String,
Float> geneticNetwork) {
+ final CyTable nodeAttribs, TypedLinkNetwork<String,
Float> physicalNetwork, TypedLinkNetwork<String, Float> geneticNetwork) {
final CyNode newNode = Cytoscape.getCyNode(nodeName, true); //
create=true
@@ -305,13 +318,16 @@
//Add attributes
final Set<String> genes = module.getMemberValues();
final Integer geneCount = Integer.valueOf(genes.size());
- nodeAttribs.setAttribute(newNode.getIdentifier(), GENE_COUNT,
geneCount);
- nodeAttribs.setAttribute(newNode.getIdentifier(),
GENE_COUNT_SQRT, Math.sqrt(geneCount));
+ //nodeAttribs.setAttribute(newNode.getIdentifier(), GENE_COUNT,
geneCount);
+ newNode.getCyRow().set(GENE_COUNT, geneCount);
+ //nodeAttribs.setAttribute(newNode.getIdentifier(),
GENE_COUNT_SQRT, Math.sqrt(geneCount));
+ newNode.getCyRow().set(GENE_COUNT_SQRT, Math.sqrt(geneCount));
if (genes.size() > maxSize)
maxSize = genes.size();
final double score = Double.valueOf(module.score());
- nodeAttribs.setAttribute(newNode.getIdentifier(), SCORE, score);
+ //nodeAttribs.setAttribute(newNode.getIdentifier(), SCORE,
score);
+ newNode.getCyRow().set( SCORE, score);
StringBuilder members = new StringBuilder();
for (String gene : genes)
@@ -319,11 +335,13 @@
if (members.length()!=0) members.append("|");
members.append(gene);
}
- nodeAttribs.setAttribute(newNode.getIdentifier(), MEMBERS,
members.toString());
-
+ //nodeAttribs.setAttribute(newNode.getIdentifier(), MEMBERS,
members.toString());
+ newNode.getCyRow().set(MEMBERS, members.toString());
- nodeAttribs.setAttribute(newNode.getIdentifier(),
PHYS_EDGE_COUNT, physicalNetwork.subNetwork(module.asStringSet()).numEdges());
- nodeAttribs.setAttribute(newNode.getIdentifier(),
GEN_EDGE_COUNT, geneticNetwork.subNetwork(module.asStringSet()).numEdges());
+ //nodeAttribs.setAttribute(newNode.getIdentifier(),
PHYS_EDGE_COUNT, physicalNetwork.subNetwork(module.asStringSet()).numEdges());
+ newNode.getCyRow().set(PHYS_EDGE_COUNT,
physicalNetwork.subNetwork(module.asStringSet()).numEdges());
+ //nodeAttribs.setAttribute(newNode.getIdentifier(),
GEN_EDGE_COUNT, geneticNetwork.subNetwork(module.asStringSet()).numEdges());
+ newNode.getCyRow().set(GEN_EDGE_COUNT,
geneticNetwork.subNetwork(module.asStringSet()).numEdges());
//Add to network
networksOrderedByScores.add(new NetworkAndScore(nodeName,
genes, score));
@@ -334,7 +352,7 @@
private CyNetwork generateNestedNetwork(final String networkName,
final Set<String> nodeNames, final CyNetwork
origPhysNetwork,
final CyNetwork origGenNetwork,
TypedLinkNetwork<String, Float> physicalNetwork, TypedLinkNetwork<String,
Float> geneticNetwork, final boolean createNetworkView,
- final CyAttributes networkAttr, boolean isGNetSigned,
String geneticEdgeAttrName)
+ final CyTable networkAttr, boolean isGNetSigned, String
geneticEdgeAttrName)
{
if (nodeNames.isEmpty())
return null;
@@ -342,9 +360,10 @@
// First, create network without view.
final CyNetwork nestedNetwork =
Cytoscape.createNetwork(networkName, overviewNetwork, false);
- networkAttr.setAttribute(nestedNetwork.getIdentifier(),
VisualStyleObserver.NETWORK_TYPE_ATTRIBUTE_NAME, NetworkType.MODULE.name());
+ //networkAttr.setAttribute(nestedNetwork.getIdentifier(),
VisualStyleObserver.NETWORK_TYPE_ATTRIBUTE_NAME, NetworkType.MODULE.name());
+ nestedNetwork.getCyRow().set(
VisualStyleObserver.NETWORK_TYPE_ATTRIBUTE_NAME, NetworkType.MODULE.name());
- CyAttributes nodeAttributes = Cytoscape.getNodeAttributes();
+ CyTable nodeAttributes = Cytoscape.getNodeAttributes();
// Add the nodes to our new nested network.
final List<CyNode> nodes = new ArrayList<CyNode>();
@@ -356,20 +375,22 @@
}
nestedNetwork.addNode(node);
nodes.add(node);
- nodeAttributes.setAttribute(node.getIdentifier(),
VisualStyleObserver.PARENT_MODULE_ATTRIBUTE_NAME, networkName);
+ //nodeAttributes.setAttribute(node.getIdentifier(),
VisualStyleObserver.PARENT_MODULE_ATTRIBUTE_NAME, networkName);
+
node.getCyRow().set(VisualStyleObserver.PARENT_MODULE_ATTRIBUTE_NAME,
networkName);
}
- CyAttributes cyEdgeAttrs = Cytoscape.getEdgeAttributes();
+ CyTable cyEdgeAttrs = Cytoscape.getEdgeAttributes();
// Add the edges induced by "origPhysNetwork" to our new nested
network.
- List<CyEdge> edges = (List<CyEdge>)
origPhysNetwork.getConnectingEdges(getIntersectingNodes(origPhysNetwork,
nodes));
+ List<CyEdge> edges = (List<CyEdge>)
origPhysNetwork.getConnectingEdgeList(getIntersectingNodes(origPhysNetwork,
nodes));
for (final CyEdge edge : edges)
{
- if
(physicalNetwork.containsEdge(edge.getSource().getIdentifier(),edge.getTarget().getIdentifier()))
+ if
(physicalNetwork.containsEdge(edge.getSource().getCyRow().get("name",
String.class),edge.getTarget().getCyRow().get("name", String.class)))
{
nestedNetwork.addEdge(edge);
- cyEdgeAttrs.setAttribute(edge.getIdentifier(),
"PanGIA.Interaction Type", "Physical");
+
//cyEdgeAttrs.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type",
"Physical");
+ edge.getCyRow().set("PanGIA.Interaction Type",
"Physical");
}
}
@@ -377,38 +398,60 @@
edges = (List<CyEdge>)
origGenNetwork.getConnectingEdges(getIntersectingNodes(origGenNetwork, nodes));
for (final CyEdge edge : edges)
{
- if
(geneticNetwork.containsEdge(edge.getSource().getIdentifier(),edge.getTarget().getIdentifier()))
+ if
(geneticNetwork.containsEdge(edge.getSource().getCyRow().get("name",
String.class),edge.getTarget().getCyRow().get("name", String.class)))
{
nestedNetwork.addEdge(edge);
- Object existingAttribute =
cyEdgeAttrs.getAttribute(edge.getIdentifier(), "PanGIA.Interaction Type");
+ //Object existingAttribute =
cyEdgeAttrs.getAttribute(edge.getIdentifier(), "PanGIA.Interaction Type");
+ Object existingAttribute =
edge.getCyRow().getRaw("PanGIA.Interaction Type");
if (existingAttribute==null ||
!existingAttribute.equals("Physical"))
{
if (isGNetSigned)
{
- double genscore =
(Double)cyEdgeAttrs.getAttribute(edge.getIdentifier(), geneticEdgeAttrName);
- if (genscore<0)
cyEdgeAttrs.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type",
"Genetic(negative)");
- else
cyEdgeAttrs.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type",
"Genetic(positive)");
- }else
cyEdgeAttrs.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type",
"Genetic");
+ //double genscore =
(Double)cyEdgeAttrs.getAttribute(edge.getIdentifier(), geneticEdgeAttrName);
+ double genscore =
edge.getCyRow().get(geneticEdgeAttrName, Double.class);
+ if (genscore<0) {
+
//cyEdgeAttrs.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type",
"Genetic(negative)");
+
edge.getCyRow().set("PanGIA.Interaction Type", "Genetic(negative)");
+ }
+ else {
+
//cyEdgeAttrs.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type",
"Genetic(positive)");
+
edge.getCyRow().set("PanGIA.Interaction Type", "Genetic(positive)");
+ }
+ }else {
+
//cyEdgeAttrs.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type",
"Genetic");
+ edge.getCyRow().set(
"PanGIA.Interaction Type", "Genetic");
+ }
}
else
if (isGNetSigned)
{
- double genscore =
(Double)cyEdgeAttrs.getAttribute(edge.getIdentifier(), geneticEdgeAttrName);
- if (genscore<0)
cyEdgeAttrs.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type",
"Physical&Genetic(negative)");
- else
cyEdgeAttrs.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type",
"Physical&Genetic(positive)");
- }else
cyEdgeAttrs.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type",
"Physical&Genetic");
+ //double genscore =
(Double)cyEdgeAttrs.getAttribute(edge.getIdentifier(), geneticEdgeAttrName);
+ double genscore =
edge.getCyRow().get(geneticEdgeAttrName, Double.class);
+ if (genscore<0) {
+
//cyEdgeAttrs.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type",
"Physical&Genetic(negative)");
+
edge.getCyRow().set("PanGIA.Interaction Type", "Physical&Genetic(negative)");
+ }
+ else {
+
//cyEdgeAttrs.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type",
"Physical&Genetic(positive)");
+ edge.getCyRow().set(
"PanGIA.Interaction Type", "Physical&Genetic(positive)");
+ }
+ }else {
+
//cyEdgeAttrs.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type",
"Physical&Genetic");
+
edge.getCyRow().set("PanGIA.Interaction Type", "Physical&Genetic");
+ }
}
}
if (createNetworkView) {
- CyNetworkView theView =
Cytoscape.createNetworkView(nestedNetwork);
+ CyNetworkView theView =
ServicesUtil.cyNetworkViewFactoryServiceRef.getNetworkView(nestedNetwork);
-
theView.setVisualStyle(VisualStyleObserver.VS_MODULE_NAME);
-
Cytoscape.getVisualMappingManager().setVisualStyle(moduleVS);
- theView.redrawGraph(false, true);
+//
theView.setVisualStyle(VisualStyleObserver.VS_MODULE_NAME);
+//
Cytoscape.getVisualMappingManager().setVisualStyle(moduleVS);
+// theView.redrawGraph(false, true);
- CyLayoutAlgorithm alg =
cytoscape.layout.CyLayouts.getLayout("force-directed");
- theView.applyLayout(alg);
+ CyLayoutAlgorithm alg =
ServicesUtil.cyLayoutsServiceRef.getLayout("force-directed");
+ alg.setNetworkView(theView);
+ ServicesUtil.taskManagerServiceRef.execute(alg);
}
return nestedNetwork;
@@ -466,8 +509,8 @@
* no network w/ this title.
*/
private CyNetwork getNetworkByTitle(final String networkTitle) {
- for (final CyNetwork network : Cytoscape.getNetworkSet()) {
- if (network.getTitle().equals(networkTitle))
+ for (final CyNetwork network :
ServicesUtil.cyNetworkManagerServiceRef.getNetworkSet()) {
+ if (network.getCyRow().get("name",
String.class).equals(networkTitle))
return network;
}
@@ -475,20 +518,28 @@
}
private void applyNetworkLayout(final CyNetwork network, Double cutoff,
Double maxScore) {
- final CyNetworkView targetView =
Cytoscape.getNetworkView(network
- .getIdentifier());
+ //final CyNetworkView targetView =
Cytoscape.getNetworkView(network
+ // .getIdentifier());
+
+ //targetView.applyLayout(tuning());
+ //targetView.redrawGraph(false, true);
+
+ final CyNetworkView targetView =
ServicesUtil.cyNetworkViewManagerServiceRef.getNetworkView(network.getSUID());
- targetView.applyLayout(tuning());
- //targetView.redrawGraph(false, true);
+ CyLayoutAlgorithm alg = tuning();
+ alg.setNetworkView(targetView);
+ ServicesUtil.taskManagerServiceRef.execute(alg);
+
+ targetView.updateView();
}
private CyLayoutAlgorithm tuning() {
- final CyLayoutAlgorithm fd =
CyLayouts.getLayout(LAYOUT_ALGORITHM);
+ final CyLayoutAlgorithm fd =
ServicesUtil.cyLayoutsServiceRef.getLayout(LAYOUT_ALGORITHM);
- fd.getSettings().get("defaultSpringLength").setValue("90");
- fd.getSettings().get("defaultNodeMass").setValue("8");
- fd.getSettings().updateValues();
- fd.updateSettings();
+// fd.getSettings().get("defaultSpringLength").setValue("90");
+// fd.getSettings().get("defaultNodeMass").setValue("8");
+// fd.getSettings().updateValues();
+// fd.updateSettings();
return fd;
}
Modified:
csplugins/trunk/ucsd/ruschein/PanGIA-impl/src/main/java/org/idekerlab/PanGIAPlugin/PanGIAEdgeContextMenuListener.java
===================================================================
---
csplugins/trunk/ucsd/ruschein/PanGIA-impl/src/main/java/org/idekerlab/PanGIAPlugin/PanGIAEdgeContextMenuListener.java
2011-10-29 01:04:05 UTC (rev 27335)
+++
csplugins/trunk/ucsd/ruschein/PanGIA-impl/src/main/java/org/idekerlab/PanGIAPlugin/PanGIAEdgeContextMenuListener.java
2011-10-29 01:04:54 UTC (rev 27336)
@@ -3,22 +3,22 @@
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
-import giny.view.EdgeView;
+import org.cytoscape.view.model.View;
+import org.cytoscape.model.CyEdge;
import javax.swing.JMenu;
import javax.swing.JMenuItem;
import javax.swing.JPopupMenu;
-import cytoscape.CyNode;
-import cytoscape.Cytoscape;
-import cytoscape.data.CyAttributes;
-import cytoscape.view.CyNetworkView;
-import ding.view.EdgeContextMenuListener;
+import org.cytoscape.model.CyNode;
+import org.cytoscape.model.CyTable;
+import org.cytoscape.view.model.CyNetworkView;
+//import ding.view.EdgeContextMenuListener;
-public class PanGIAEdgeContextMenuListener implements EdgeContextMenuListener
+public class PanGIAEdgeContextMenuListener implements EdgeContextMenuListener
{
private final CyNetworkView view;
- private CyAttributes edgeAttr = Cytoscape.getEdgeAttributes();
+ private CyTable edgeAttr = view.getModel().getDefaultEdgeTable();
public PanGIAEdgeContextMenuListener(CyNetworkView view)
@@ -26,7 +26,7 @@
this.view = view;
}
- public void addEdgeContextMenuItems(EdgeView ev, JPopupMenu menu)
+ public void addEdgeContextMenuItems(View<CyEdge> ev, JPopupMenu menu)
{
PanGIANodeContextMenuListener.addContextMenuItems(view,
ev.getGraphView(), menu);
Modified:
csplugins/trunk/ucsd/ruschein/PanGIA-impl/src/main/java/org/idekerlab/PanGIAPlugin/PanGIANodeContextMenuListener.java
===================================================================
---
csplugins/trunk/ucsd/ruschein/PanGIA-impl/src/main/java/org/idekerlab/PanGIAPlugin/PanGIANodeContextMenuListener.java
2011-10-29 01:04:05 UTC (rev 27335)
+++
csplugins/trunk/ucsd/ruschein/PanGIA-impl/src/main/java/org/idekerlab/PanGIAPlugin/PanGIANodeContextMenuListener.java
2011-10-29 01:04:54 UTC (rev 27336)
@@ -12,18 +12,17 @@
import org.idekerlab.PanGIAPlugin.utilities.collections.HashMapUtil;
import org.idekerlab.PanGIAPlugin.utilities.files.FileUtil;
-import giny.model.Edge;
-import giny.model.Node;
-import giny.view.EdgeView;
-import giny.view.GraphView;
-import giny.view.NodeView;
-import cytoscape.CyEdge;
-import cytoscape.CyNetwork;
-import cytoscape.Cytoscape;
-import cytoscape.CyNode;
-import cytoscape.data.CyAttributes;
-import cytoscape.view.CyNetworkView;
-import ding.view.NodeContextMenuListener;
+//import giny.model.Edge;
+//import giny.model.Node;
+//import giny.view.EdgeView;
+//import giny.view.GraphView;
+//import giny.view.NodeView;
+import org.cytoscape.model.CyEdge;
+import org.cytoscape.model.CyNetwork;
+import org.cytoscape.model.CyNode;
+import org.cytoscape.model.CyTable;
+import org.cytoscape.view.model.CyNetworkView;
+//import ding.view.NodeContextMenuListener;
import java.util.*;
--
You received this message because you are subscribed to the Google Groups
"cytoscape-cvs" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/cytoscape-cvs?hl=en.