KNIME SUMMIT 2016 Scripting Integration Workshop Antje Janosch – Technology Development Studio MPI-CBG Dresden
History ? ? R-Scrip4ng, Python Scrip4ng, Matlab Scrip4ng 2009 2010 2016 2013 / 2014 2 Antje Janosch, MPI-CBG, Dresden, Germany
General Features • Server/Client based solu4on • Parallel execu4on • Centralized setup • Remote template repositories • Template configura4on via “KNIME-like” GUI • Deployment of KNIME-nodes with scrip4ng behind 3 Antje Janosch, MPI-CBG, Dresden, Germany
Short news R • RowID support (both direc4ons) • Domain values • Color / Size / Shape model support • Flow variable support • Chunked transfer • ‘Open external’ • R-workspace as generic R port 4 Antje Janosch, MPI-CBG, Dresden, Germany
Client-(server) model Python- Server RServe local remote or local remote or local local Matlab- Server remote or local 5 Antje Janosch, MPI-CBG, Dresden, Germany
Getting started (Client) • Install Scrip4ng plugins from “Trusted Community Contribu4ons” update site (KNIME >= 3.0 recommended) 6 Antje Janosch, MPI-CBG, Dresden, Germany
Preferences 7 Antje Janosch, MPI-CBG, Dresden, Germany
Node Types • Plot • Snippet • (OpenIn… ) • Generic nodes (R) 8 Antje Janosch, MPI-CBG, Dresden, Germany
Plot / Snippet – Script editor tab Column names Scripting area 9 Antje Janosch, MPI-CBG, Dresden, Germany
Plot / Snippet – Template tab
Plot / Snippet – Template tab Template Repository
Plot / Snippet – Template tab Template Repository
Plot / Snippet – Template tab Template Repository
Plot / Snippet – Template tab Template Repository Template Description / Source
Plot / Snippet – Template tab Template Repository Template Description / Source
Script editor tab – template view 16 Antje Janosch, MPI-CBG, Dresden, Germany
Script editor tab – template view RGG interface of the selected template 17 Antje Janosch, MPI-CBG, Dresden, Germany
Script editor tab – template view RGG interface of the selected template 18 Antje Janosch, MPI-CBG, Dresden, Germany
Script editor tab – template view RGG interface of the selected template 19 Antje Janosch, MPI-CBG, Dresden, Germany
Script editor tab – template view RGG interface of the selected template 20 Antje Janosch, MPI-CBG, Dresden, Germany
Script editor tab – template view 21 Antje Janosch, MPI-CBG, Dresden, Germany
Script editor tab – template view modify template (dev) 22 Antje Janosch, MPI-CBG, Dresden, Germany
Script editor tab – template view RGG (XML) modify template (dev) 23 Antje Janosch, MPI-CBG, Dresden, Germany
Tips and Tricks for Editing (R) • Mouse click = ”Column name” • Alt + Mouse click = kIn$”Column name” • Ctrl + Mouse click = Displays possible domain values of the column and offers to insert a selec4on (comma separated • Press Apple/Windows key and select mul4ple = as soon as you release the key, the selected column names will be inserted “column 1”,”column 2”,... • FLOWVAR(currentColumnName) placeholder to enable the use of flow variables 24 Antje Janosch, MPI-CBG, Dresden, Germany
Plot – Output Options tab Placeholders for filename $$DATE$$ - yymmdd $$USER$$ - user name $$WS$$ - knime.workspace FLOWVAR(varName) – flow variable 25 Antje Janosch, MPI-CBG, Dresden, Germany
Plot - View options (R) • Dynamic repain4ng acer mouse click 26 Antje Janosch, MPI-CBG, Dresden, Germany
KNIME tables in R • Input ports (kIn or kIn1, kIn2, …) • R data.frame • RowIDs as row names • Domain values as factor levels • Color model (kIn.color.model) • R data.frame • Colors as hex-values • Shape model (kIn.shape.model) • R data.frame • Shapes as pch and their KNIME name 27 Antje Janosch, MPI-CBG, Dresden, Germany
KNIME tables in R • Size model (kIn.size.model + kIn.size.model.fun) • Name of the column having a size model • Func4on to calculate the size based on the KNIME size model • Flow variables (knime.flow.in) • R list 28 Antje Janosch, MPI-CBG, Dresden, Germany
KNIME tables in R • Size model (kIn.size.model + kIn.size.model.fun) • Name of the column having a size model • Func4on to calculate the size based on the KNIME size model • Flow variables (knime.flow.in) • R list 29 Antje Janosch, MPI-CBG, Dresden, Germany
KNIME tables in R • Size model (kIn.size.model + kIn.size.model.fun) • Name of the column having a size model • Func4on to calculate the size based on the KNIME size model • Flow variables (knime.flow.in) • R list 30 Antje Janosch, MPI-CBG, Dresden, Germany
Template repositories ################################################## � # name: � A very cool method � # author: � Antje Janosch � # category: � KNIME-UGM/ � Template.txt # preview: � niceImage.png � � (optional) � � This is my template description. � ###### � � R/Python/Matlab code � Optionally emmbedded in RGG � � ################################################## � # name: � Another very cool method � # author: � Antje Janosch � ... � � 31 Antje Janosch, MPI-CBG, Dresden, Germany
RGG • R GUI Generator http://rgg.r-forge.r-project.org/ <rgg> � RGG: a general GUI Framework for some interface elements definitions � R scripts.BMC Bioinformatics. <![CDATA[ � 2009 Mar 2 ; R-script � 10:74. doi: 10.1186/1471-2105-10-74. ]]> � </rgg> � • Addi4onal element � <panellistbox label="Label" items="item1,item2,item3" span="full"/> 32 Antje Janosch, MPI-CBG, Dresden, Germany
RGG • Placeholders $$$NUM_ATTRIBUTES$$$ - for all numeric columns $$$STR_ATTRIBUTES$$$ - for all string columns $$$ALL_ATTRIBUTES$$$ - for all columns � 33 Antje Janosch, MPI-CBG, Dresden, Germany
Demos (R) 1. I want to use templates 2. I want to write my own R-scripts 3. I want to create knimeR-workflows (generic nodes) 4. I want to create templates 5. I want to create a KNIME node with R behind 34 Antje Janosch, MPI-CBG, Dresden, Germany
Outlook • Support of row IDs for Python/Matlab and for both direc4ons • Console output view for R nodes • Keep offline copy of template files • … 35 Antje Janosch, MPI-CBG, Dresden, Germany
Contact us! antje.janosch@mpi-cbg.de stoeter@mpi-cbg.de 36 Antje Janosch, MPI-CBG, Dresden, Germany
Recommend
More recommend