nrnb / GoogleSummerOfCode

Main documentation site for NRNB GSoC project ideas and resources
116 stars 39 forks source link

Develop a Cytoscape App for the CausalPath Algorithm #169

Closed cannin closed 3 years ago

cannin commented 3 years ago

Background

CausalPath (https://www.biorxiv.org/content/10.1101/258855v4.full) is an algorithm for identifying causal interactions from proteomic profiles (i.e., molecular data meets pathway knowledge)

Goal

The goal is to make the algorithm available to users of the Cytoscape as an app (http://apps.cytoscape.org/). Information about Cytoscape app development: https://github.com/cytoscape/cytoscape/wiki/Cytoscape-3.0-App-Development CausalPath currently takes in a number of input files. Loading these into the app and producing visualizations similar to the BioRxiv publication will be essential.

Difficulty Level 2

Development will be dependent on a number of existing code (which might require modification) rather than a project from scratch.

Skills

Public Repository

Potential Mentors

Augustin Luna Ozgun Babur

SGanguly1999 commented 3 years ago

@cannin I would like to work on it.

thepritam commented 3 years ago

@cannin @ozgunbabur I have experience in app development and also I am familiar with Cytoscape. I am very much interested to contribute into this .

cannin commented 3 years ago

@thepritam @SGanguly1999 sincere apologies for the delayed response. For the proposal that you will eventually need to write you should 1) prepare a CV, 2) be able to demonstrate familiarity Cytoscape app development and 3) an understanding of calling CasualPath functions from other Java code. A key component in the proposal will be a plan for the app interface and visualization of results.

Important Note: I have added a link to the description to example datasets.

SGanguly1999 commented 3 years ago

Sure @cannin ,I will try to do that as soon as possible.

thepritam commented 3 years ago

Thank you @cannin for your response and will try to write the proposal accordingly.

thepritam commented 3 years ago

@cannin I deeply apologize for very much delay in my progress. I have made progress in visualizing the generated sif files from the casual path algorithm in Cytoscape. Can you help me to find what should be the proper layout settings for the visualization as per BioRxiv publication. And I have also made a proper plan for development of the app. Please help me out on this issue. Thanks

cannin commented 3 years ago

@thepritam Cytoscape has its own layout features (I expect user to use whatever they want): http://manual.cytoscape.org/en/stable/Navigation_and_Layout.html

If possible to set a default, choose a force-directed layout.

PS: One important note. In the paper, there are arrows pointed at boxes with many nodes. This notation actually means there many arrows pointed at all those nodes.

thepritam commented 3 years ago

@cannin Thank you for the suggestion. I will do try to set a default configuration for the visualization.

thepritam commented 3 years ago

@cannin in the given visualizations of the network in the BioRxiv publication and also in the sample data , in each nodes there is some small circle which has p or t written on it. And also there color is different if it is activating phosphorylation or deactivating phosphorylation site. How can we visualize these type of things in each node and also how to understand this things from the generated .sif files from the casual path algorithm. And also there are links showing in the network while visualizing the file which are not any nodes. Please help me out on this issues . Thanks,

cannin commented 3 years ago

Great questions. To my knowledge, there is no simple way of showing the small circle. Can you suggest something creative in your proposal? This page shows you what is possible: http://manual.cytoscape.org/en/stable/Styles.html

If you download the "All Data" link: https://www.biorxiv.org/content/10.1101/258855v4.supplementary-material there are results from CausalPath. You will find the SIF files you mention, but also the .format files with the styling (e.g., color) information. With entries like this for the small circles (and information for all the other symbols in the graphic):

node    ERBB2   rppasite    HER2_pY1248|p|255 255 255|0 180 20|

I think the first RGB color (white, 255) is the small circle color and the second one (e.g., 0 18 20) is the border. Double-check here (http://causalpath.org/).

PS: Also, make sure you see that there are multiple pairs of SIF and .format result files. It would be good to be able to switch views (or at least choose one).

thepritam commented 3 years ago

Thank you @cannin for this suggestion. I will try to come with something for this in my proposal. Can you please elaborate this line "Also, make sure you see that there are multiple pairs of SIF and .format result files. It would be good to be able to switch views". Thanks

cannin commented 3 years ago

@thepritam Download this file: https://www.biorxiv.org/highwire/filestream/83268/field_highwire_adjunct_files/4/258855-5.zip and you will see in each result folder these multiple pairs.

thepritam commented 3 years ago

@cannin Yes found There are three pairs of files of SIF and .format files. Does these names have any significant meaning for e.g casuative , casuative-data-centric and conflicting (given in the data) which I have to consider in any case. Thanks

thepritam commented 3 years ago

@cannin Can you please give some idea how the interface should look like and what are the necessary item should be incorporated. Thanks

cannin commented 3 years ago

@thepritam think it through in your proposal, but for now maybe a drop-down option in the interface to choose one of the 3 pairs to visualize is sufficient. But it would be nice to save the files for the user in a location they choose, and to be able to load/visualize results that are pre-computed. I do not know what is possible in the interface in Cytoscape, but you can use this as a starting point: http://causalpath.org/ as you think about for your proposal.

thepritam commented 3 years ago

Thank you @cannin for the guidance.

thepritam commented 3 years ago

@thepritam think it through in your proposal, but for now maybe a drop-down option in the interface to choose one of the 3 pairs to visualize is sufficient. But it would be nice to save the files for the user in a location they choose, and to be able to load/visualize results that are pre-computed. I do not know what is possible in the interface in Cytoscape, but you can use this as a starting point: http://causalpath.org/ as you think about for your proposal.

@cannin as you are saying the user need to upload pair of files which will be generated by Casual-path algorithm. And for the casual path it requires the parameters.txt in a correct format which will be used in a .jar file of the algorithm and returns out 3 sets of pair. So Do the user will take the output and upload into the cytoscape app for visualization or we have to integrate these two jar files. Please correct me If I am wrong. Thanks

thepritam commented 3 years ago

@cannin @ozgunbabur

@thepritam think it through in your proposal, but for now maybe a drop-down option in the interface to choose one of the 3 pairs to visualize is sufficient. But it would be nice to save the files for the user in a location they choose, and to be able to load/visualize results that are pre-computed. I do not know what is possible in the interface in Cytoscape, but you can use this as a starting point: http://causalpath.org/ as you think about for your proposal.

@cannin as you are saying the user need to upload pair of files which will be generated by Casual-path algorithm. And for the casual path it requires the parameters.txt in a correct format which will be used in a .jar file of the algorithm and returns out 3 sets of pair. So Do the user will take the output and upload into the cytoscape app for visualization or we have to integrate these two jar files. Please correct me If I am wrong. Thanks

@cannin @ozgunbabur please help me out in this issue. I apologize for asking it again. Thanks,

ozgunbabur commented 3 years ago

Hi @thepritam,

CausalPath generates result networks in two forms:

Option 1: A ".sif" file and a ".format" file.

Even though it is named SIF, it is different from the ordinary SIF. The first 3 columns are the same, but this SIF uses 4th and 5th columns for other information. 4th column has references to sources and 5th column has protein sites for phosphorylation and dephosphorylation relations. The format file tells about node colors, information boxes, their text, color, border color, tooltip text, etc.

Option 2: A ".json" file.

JSON is used by the visualizer in CausalPath webserver. It encodes exactly the same information in JSON.

Using any of these options is fine for the proposal. Users can either upload two files (sif and format), or upload the json.

thepritam commented 3 years ago

@ozgunbabur thank you very much for the clarification.

thepritam commented 3 years ago

@cannin @ozgunbabur I have also shared my draft for the review in the GSoC official website. Can you please tell me how much does it take for reviewing the draft. I sincerely apologize for the delay in submitting the proposal. Please let me know about any correction I should make in my proposal or add any other thing. Thank you for your time and consideration.

cannin commented 3 years ago

@thepritam feedback sent

khanspers commented 3 years ago

This is an active GSoC 2021 project. The issue will be closed for the duration of GSoC since it is no longer available to other students.