Pathview API (url) is a bash script. It depends on cURL which is already pre-installed with most Unix/Linux/Mac systems. cURL can be download here if needed. To get started:
1. Download API with cURL
curl -O https://pathview.uncc.edu/scripts/pathviewapi.sh
2. Modify access of the API
chmod +x ./pathviewapi.sh
3. Ready to go, please check the following sections for usage
Basic Usage
./pathviewapi.sh options --gene_data | --cpd_data [--gene_id] [-- cpd_id] [--pathway_id] ... [--other options]
Common Usages (Remove annotation in parentheses in real use)
Gene data:
./pathviewapi.sh --gene_data your/gene/data/file --species hsa (KEGG species code) --gene_id ENTREZ (gene ID type) --pathway_id 00640 (KEGG pathway ID)
Compound data:
./pathviewapi.sh --cpd_data your/ cpd/data/file -- cpd_id KEGG (compound ID type) --pathway_id 00640 (KEGG pathway ID)
Gene and Compound data:
./pathviewapi.sh --gene_data your/gene/data/file --gene_id ENTREZ (gene ID type) --cpd_data your/ cpd/data/file -- cpd_id KEGG (compound ID type) --pathway_id 00640 (KEGG pathway ID)
Pathway analysis with Gene and Compound data (can be one of them):
./pathviewapi.sh --gene_data your/gene/data/file --gene_id ENTREZ (gene ID type) --cpd_data your/ cpd/data/file -- cpd_id KEGG (compound ID type) --auto_sel T
Help
./pathviewapi.sh --help
Extras
Detailed description of the arguments, click here
Specific example analysis, click here
Intuitive API query generator based on the GUI Web form, click here
For extra issues, please contact pathomics@gmail.com
This example shows the multiple sample/state integration with Pathview KEGG view.
This example shows the multiple sample/state integration with Pathview Graphviz view.
This example covers an integration pathway analysis workflow based on Pathview.
Flag | Description | Default(Common) | GUI Options |
---|---|---|---|
Input/Output | |||
--gene_data | Gene Data accepts data matrices in tab- or comma-delimited format (txt or csv). | (/home/data/gse16873.d3.txt) | Gene Data |
--cpd_data | Compound Data accepts data matrices in tab- or comma-delimited format (txt or csv). | (/home/data/sim.cpd.data2.txt) | Compound Data |
--gene_reference | The column numbers for controls. Not needed if data is relative abundance (log ratios or fold changes). | NULL(1,3,5) | Control/reference |
--gene_sample | The column numbers for cases. Not needed if data is relative abundance (log ratios or fold changes). | NULL(2,4,6) | Case/sample |
--gene_compare | Whether the experiment samples are paired or not. Not needed if data is relative abundance (log ratios or fold changes). | paired | Compare |
--cpd_reference | The column numbers for controls. Not needed if data is relative abundance (log ratios or fold changes). | NULL(1,3,5) | Control/reference |
--cpd_sample | The column numbers for cases. Not needed if data is relative abundance (log ratios or fold changes). | NULL(2,4,6) | Case/sample |
--cpd_compare | Whether the experiment samples are paired or not. Not needed if data is relative abundance (log ratios or fold changes). | paired | Compare |
--suffix | The suffix to be added after the pathway name as part of the output graph file name. | pathview | Output Suffix |
--auto_sel | Whether to select pathways manually or through pathway analysis. If set to T (or TRUE), --pathway_id option will be ignored. | F | Pathway Selection |
--pathway_id | The KEGG pathway IDs, usually 5 digit long.Pathway IDs can also be provided in a comma separated file.This option is not needed when --auto_sel is T (or TRUE). | 00010(00010,00640) | Pathway ID |
--gene_id | ID type used for the Gene Data. | ENTREZ | Gene ID Type |
--cpd_id | ID type used for the Compound Data. | KEGG | Compound ID Type |
--species | Either the KEGG code, scientific name or the common name of the target species. Click GUI dropdown for Species if not sure. | hsa | Species |
Graphics | |||
--kegg | Whether to render the pathway as native KEGG graph (.png) or using Graphviz layout engine (.pdf). | T | Kegg Native |
--layer | Controls plotting layers. Check the GUI option page for details. | F | Same Layer |
--split | Whether split node groups are split to individual nodes. | F | Split Group |
--expand | Whether the multiple-gene nodes are expanded into single-gene nodes. | F | Expand Node |
--multistate | Whether multiple states (samples or columns) Gene Data or Compound Data should be integrated and plotted in the same graph. | T | Multi State |
--matched | Whether the samples of Gene Data and Compound Data are paired. | T | Match Data |
--discrete_gene | Whether Gene Data should be treated as discrete. | F | Discrete Gene |
--discrete_cpd | Whether Compound Data should be treated as discrete. | F | Discrete Compound |
--keyposition | Controls the position of color key(s). | topleft | Key Position |
--signatureposition | Controls the position of pathview signature. | bottomright | Signature Position |
--offset | How much compound labels should be put above the default position or node center. | 1.0 | Compound Label Offset |
--align | How the color keys are aligned when both Gene Data and Compound Data are present. Potential values are x and y. | x | Keys Alignment |
Coloration | |||
--limit_gene | The limit values for Gene Data when converting them to pseudo colors. | 1(-1,1) | Limit Gene |
--limit_cpd | The limit values for Compound Data when converting them to pseudo colors. | 1(-1,1) | Limit Compound |
--bins_gene | The number of levels or bins for Gene Data when converting them to pseudo colors. | 10 | Bins Gene |
--bins_cpd | The number of levels or bins for Compound Data when converting them to pseudo colors. | 10 | Bins Compound |
--node_sum | The method name to calculate node summary given that multiple genes or compounds are mapped to it. Potential values can be found in Node Sum drop down list in GUI. | sum(mean) | Node Sum |
--na_color | The color used for NA's or missing values in Gene Data and Compound Data. Potential value can be transparent or grey. | transparent | NA Color |
--low_gene /--mid_gene / --high_gene | The color spectrum to code Gene Data.Hex color codes can also be given (#00FF00, #D3D3D3). | green/gray/red | Low,Mid,High Gene |
--low_cpd / --mid_cpd / --high_cpd | The color spectrum to code Compound Data.Hex color codes can also be given (#00FF00, #D3D3D3). | blue/gray/yellow | Low,Mid,High Compound |
API Specific | --username | The registered email to access the API. | guest | NA |
--password | The password for the registered account to access the API. | NULL | NA |
If API query succeeds, it will generate a url in json format for results download.
Example: {"download link":"http://pathview.uncc.edu//all/demo/57b61a93e1fab/file.zip"}
If any problem occurs, the API will throw error messages or warnings, which are usually self-explanatory.
Pathview Web API is RESTful as it adheres to the REST (Representational State Transfer) architecture. In particular, this API (1) is stateless, (2) use base URLs to its resources (3) supports standard HTTP methods (e.g. GET, POST, etc) , and (4) returns its responses in JSON format. Pathview Web API currently supports HTTP queries through POST but not GET. While GET method is often used directly in a web browser for data retrieval (in URL format), POST method allows more complex queries with user input data and options (through command-line like statements). Pathview Web API and GUI have different front ends (command line vs web page) and response formats (JSON vs HTML), but they share the same backend. The key difference between here is that they use different Controllers in the Laravel MVC (Model-View-Controller) framework (details at https://laravel.com).
Please cite our paper if you use this website. This will help the Pathview project in return.
Please also cite GAGE paper if you are doing pathway analysis besides visualization, i.e. Pathway Selection set to Auto on the New Analysis page.
Email us: pathomics@gmail.com
© 2013 - Pathview Project