how to select all edges between two selected nodes in cytoscape using the GUI - cytoscape

Does anyone know how to select all edges between two selected nodes in cytoscape using the GUI?
This would be easy to do manually if it were a small network but in my case there are over 10k nodes.
Ideally I want to select all edges that are between a list of 70 nodes.
Thanks.

Well, much to my surprise, the answer is "no", I don't know of an easy way to select edges connecting two nodes. I have a "hacky" way to do it that would work, though:
Select all of the nodes you want
Do File->New Network->From Selected Nodes, All Edges. This will give you a new network with only the selected nodes and the edges that connect them. Now, change the "shared interaction" column for all of those edges to something unique (e.g. Select). This column is shared between the subnetwork you created and the original network.
Now, back in the original network, use can use the Filter panel to create a column filter looking for all edges with a shared interaction of "Select". They will then be selected.
Probably much more complex than you might want, but it will do the job. I would also recommend adding a feature request (Help->Report a Bug) for selecting edges connecting selected nodes.

Related

How do I get the top N filter to show the correct values in Tableau?

I am trying to show the top-most delayed airline routes in this dataset. Whenever I leave it unfiltered, I can see the most delayed set that I want to show. However, as soon as I apply a top N filter, it gives me a different list. I'm not sure what's happening here or how to fix it.
Link to workbook https://public.tableau.com/app/profile/shannon.ashberry/viz/FlightDelaysandCancellations_16448265391280/Top10MostDelayedRoutes?publish=yes
I hope the community can help.
Thanks,
Shannon
What I get
What I want
You probably want some of your filters to be applied first, and then compute the top 10 filter upon the results that pass the first filter. To make a filter take effect earlier, you can right click on the field in the filter shelf and add it to the context of your viz.
Search for “order of operations” in the tableau help for more info.

IBM SPSS - Split scatter graphs

On IBM SPSS I am trying to create four simple scatter graphs for the following data.
I want to plot weight on one axis, carbohydrates on another axis, but I want a graph for four different seasons.
I have tried making a simple scatter, by putting weight on x axis and carbs on the y axis but am unsure how to create the four different seasons.
I tried putting seasons in the panel - column, but I just get four graphs on one single line.
Can anyone help with this?
In the menus, select Data>Split File, click on the Compare groups option on the right, move the season variable into the Groups Based on box, then click OK. Then just run the simple scatterplot and you'll get one for each season. Make sure to go back and select the "Analyze all cases, do not create groups" option in the Data>Split File dialog box before you do further analyses where you want to include all cases. The split status is displayed in the lower right corner of the Data Editor window. Reopening the file will automatically turn off the splitting.

How to show names of selected nodes in cytoscape

Not sure where to ask, but found answers on cytoscape before, so here is the question.
I have a larger network in Cytoscape, about 1000 nodes. I want to show the whole net work with the names of a few nodes. I tried Annotation, but it is not editable after putting there (text or location).
Is there a way I can do something like this and keep other nodes clear, Programmatically or not?
Sure! You can select the nodes and then do a bypass to change the size, color, and label of the nodes.

Labels only for nodes with a minimal weight of x in Gephi

I have a network with ca. 3500 nodes and ca. 10000 edges. I'd like to show only labels for nodes with a certain weight, for example all with more than 100 edges. How can I do that?
First, you need to make sure the label view is activated for nodes (in the toolbar below the graph view).
Second, you need to compute the weight of the nodes, using whatever statistics you want. In the Statistics tab, simply click Run on the particular metrics you want.
Third, in the Filters tab, drag Attributes/Range/-your metrics- down to the Queries section, and choose the appropriate settings (in your case 100 to max.) using the slider on the bottom. You can view the exact numbers of the slider by clicking the "+" next to your Parameters. Click Run to run your filter and hide less important nodes.
Fourth, click the "A->" icon just under the Filters tab. This will hide all labels that don't match your filter query.
Image from Sébastien Heymann, Hide labels from filters result.
Finally, remove the filter you created for label filtering by right-clicking it and selecting "Remove".

Receive subset of connected nodes by eliminating relationship with certain node

Last days I am trying to figure something out in Neo4j, but I still didn't succeed. The situation:
You see a blue node (there are many in the database, but this one has a specific ID), the blue node is connected to orange nodes and the orange nodes to green nodes. The green nodes are further connected to other orange nodes.
Now it should be very nice if I can get all the orange nodes that are not directly connected to the blue node (marked with a square).
I can get all the orange nodes from each green node, but I only want the nodes not connected to blue (I also want the nodes directly connected to blue in another collect or other method, but that is not the problem to achieve).
I tried different methods, to give an example of one of the things I tried:
MATCH (b:BLUE{BLUE_ID:'234234'})-[a:relation_type_1]->(node_with_connection_to_blue)<-[c:relation_type_2]-(g:GREEN)-[d:relation_type_2]->(node_with_no_connection_to_blue)<-[e:relation_type_1]-(b:BLUE)
WHERE NOT (node_with_no_connection_to_blue)<-[a:relation_type_1]-(b:BLUE{BLUE_ID:'234234'})
With any help I would be very grateful! Thanks in advance!
Best regards
There are multiple ways to solve this. Assuming a blue node is not directly connected to a huge number of orange nodes, I'd first build up a collection holding all direct neighbors of blue and in a second step do the traversal to the orange nodes of 2nd degree. Those need to be filtered by the direct neighbors in a WHERE:
MATCH (b:BLUE{BLUE_ID:'234234'})-[:relation_type_1]->(o)
WITH b, collect(o) as directNeighbors
MATCH (b)-[:relation_type_1]->()<-[:relation_type_2]-()-[:relation_type_2]->(orange)
WHERE NOT orange in directNeighbors
RETURN distinct orange

Resources