Spreadsheet Import - Fertilizer Use
Created: 2011-10-09 13:06:44
Last updated: 2011-10-09 13:07:51
This workflow takes data from a spreadsheet and creates a graph of fertilizer use in NY state from 1960-1965.
Preview
Run
Run this Workflow in the Taverna Workbench...
Workflow Components
![header=[] body=[This is the author information extracted from the workflow version] cssheader=[boxoverTooltipHeader] cssbody=[boxoverTooltipBody] delay=[200] Information](/images/famfamfam_silk/information.png?1680607579)
Authors (1)
![header=[] body=[These are the descriptive titles embedded within the workflow version] cssheader=[boxoverTooltipHeader] cssbody=[boxoverTooltipBody] delay=[200] Information](/images/famfamfam_silk/information.png?1680607579)
Titles (1)
Spreadsheet Import Example |
![header=[] body=[These are the descriptions embedded within the workflow version] cssheader=[boxoverTooltipHeader] cssbody=[boxoverTooltipBody] delay=[200] Information](/images/famfamfam_silk/information.png?1680607579)
Descriptions (1)
Example using the SpreadsheetImport service to import data from an Excel spreadsheet.
The workflow imports the file spreadsheet file WaterUse.xlsx and generates a graph from the date.
The source data is from http://data.gov.uk/ |
![header=[] body=[These are the listed dependencies of the workflow] cssheader=[boxoverTooltipHeader] cssbody=[boxoverTooltipBody] delay=[200] Information](/images/famfamfam_silk/information.png?1680607579)
Dependencies (0)
Processors (6)
Name |
Type |
Description |
SpreadsheetImport |
spreadsheet |
|
GenerateGraphURL |
beanshell |
ScriptStringBuilder sb = new StringBuilder();
sb.append("http://chart.apis.google.com/chart?");
sb.append("cht=bvg");
sb.append("&chs=1000x300");
sb.append("&ch=");
sb.append("&chxt=x,y,y");
sb.append("&chbh=5,1,5");
sb.append("&chxr=0,");
sb.append(Float.parseFloat(years.get(0)).intValue());
sb.append(",");
sb.append(Float.parseFloat(years.get(years.size() - 1)).intValue());
sb.append(",2|1,0,15000");
sb.append("&chds=0,15000");
sb.append("&chxl=2:|1,000%20nutrient%20tons");
sb.append("&chxp=2,50");
sb.append("&chco=FF0000,00FF00,0000FF");
sb.append("&chdl=");
for (int i = 0; i < headers.size(); i++) {
sb.append(headers.get(i).replace(" ", "%20"));
if (i+1 < data.size()) {
sb.append("|");
}
}
if (title != void) {
sb.append("&chtt=");
sb.append(type);
}
if (data != void) {
sb.append("&chd=t:");
for (int i = 0; i < data.size(); i++) {
List data1 = (List) data.get(i);
for (int j = 0; j < data1.size(); j++) {
Float value = Float.parseFloat(data1.get(j));
sb.append(value.intValue());
if (j+1 < data1.size()) {
sb.append(",");
}
}
if (i+1 < data.size()) {
sb.append("|");
}
}
}
graphURL = sb.toString(); |
Get_Image_From_URL |
localworker |
ScriptURL inputURL = null;
if (base != void) {
inputURL = new URL(new URL(base), url);
} else {
inputURL = new URL(url);
}
byte[] contents;
if (inputURL.openConnection().getContentLength() == -1) {
// Content size unknown, must read first...
byte[] buffer = new byte[1024];
int bytesRead = 0;
int totalBytesRead = 0;
InputStream is = inputURL.openStream();
while (bytesRead != -1) {
totalBytesRead += bytesRead;
bytesRead = is.read(buffer, 0, 1024);
}
contents = new byte[totalBytesRead];
} else {
contents = new byte[inputURL.openConnection().getContentLength()];
}
int bytesRead = 0;
int totalBytesRead = 0;
InputStream is = inputURL.openStream();
while (bytesRead != -1) {
bytesRead = is.read(contents, totalBytesRead, contents.length - totalBytesRead);
totalBytesRead += bytesRead;
if (contents.length==totalBytesRead) break;
}
image = contents;
|
Beanshell |
beanshell |
Scriptdata = new ArrayList();
headers = new ArrayList();
headers.add(Nitrogen.remove(0));
headers.add(Phosphate.remove(0));
headers.add(Potash.remove(0));
data.add(Nitrogen);
data.add(Phosphate);
data.add(Potash);
year.remove(0);
years = year; |
url_value |
stringconstant |
Valuehttp://www.myexperiment.org/files/568/download/FertilizerUse.xls |
title_value |
stringconstant |
ValueFertilizer Use in U.S.A. 1960-2009 |
Beanshells (2)
Name |
Description |
Inputs |
Outputs |
GenerateGraphURL |
|
title
data
headers
years
|
graphURL
|
Beanshell |
|
year
Nitrogen
Phosphate
Potash
|
data
headers
years
|
Datalinks (11)
Source |
Sink |
url_value:value |
SpreadsheetImport:fileurl |
Beanshell:data |
GenerateGraphURL:data |
Beanshell:headers |
GenerateGraphURL:headers |
Beanshell:years |
GenerateGraphURL:years |
title_value:value |
GenerateGraphURL:title |
GenerateGraphURL:graphURL |
Get_Image_From_URL:url |
SpreadsheetImport:year |
Beanshell:year |
SpreadsheetImport:Nitrogen |
Beanshell:Nitrogen |
SpreadsheetImport:Phosphate |
Beanshell:Phosphate |
SpreadsheetImport:Potash |
Beanshell:Potash |
Get_Image_From_URL:image |
graph |
Uploader
License
All versions of this Workflow are
licensed under:
Version 1
(of 1)
Credits (1)
(People/Groups)
Attributions (1)
(Workflows/Files)
Shared with Groups (0)
None
Featured In Packs (0)
None
Log in to add to one of your Packs
Attributed By (0)
(Workflows/Files)
None
Favourited By (0)
No one
Statistics
Other workflows that use similar services
(0)
There are no workflows in myExperiment that use similar services to this Workflow.
No comments yet
Log in to make a comment