I though that it would be a good thing to have a place to insert feature requests. I looked over the site but could not find any place that would match this, so here is an entry point for this, or perhaps can you point me in the best place to provide feature requests.
I am new to KNIME and my first disapointment comes with writting your own snipplet (and writting your own rules). Although eclipse provides a framework that allows code folding, auto-complete, code coloring, error checking etc. the snipplets only provides a place to type in some text without any added features.
I thus suggest to make better use of the IDE. For instance, when a Java snipplet is created, and when slecting the editor, the project could switch to the java perspective and add a java file to the project and therefore provide the same advantages as develloping a Java project.
This could be done also to devellop your own R scripts (via StatET), etc. In addition using the EclipseColorer http://colorer.sf.net/ could be useful.
I would also like to suggest to implement an undo redo feature.
I would also suggest allowing users to automatically run the node, when possible, afterclicking apply (in the node properties). This could be an option.
Some shortcuts to insert nodes, ass well as automatically adding the node when double clicking from the Node repository would be great.
Finally, it would be great if there was an easy mechanism to personalize the organization of the nodes.
Hope this are useful suggestions and that others will join me in providing some feature requests.
I would add some if you do not mind. Here are some from users nearby: These are the low hanging fruits IMHO:
- add keywords to the node names (and search for them in the Node Repository search box)
- context menu for the text fields/area (
- Venn diagram (with 3 overlapping circles) and with an output colouring the results optionally. (This is not really important, as with
GroupBy, … similar is doable, and more general, but not as easy to do.)
- use the colour information in
Conditional Box Plot node (and maybe the size information too)
- option to “unzoom” in views (not just back with
Fit to size)
- node to manually create small table
- (meta?)node to compare two tables (maybe with different options: selected columns, without order, ) - this is a bit like the Venn diagram: doable with the current nodes, but not so easy
Rule Engine should allow to have the default from a column
GroupBy node should include a (virtual) constant column in the
Aggregation settings part (this would ease the count of values the groups)
Not sure how hard:
- overview of the configuration (the dialogs) in a metanode (I guess it is easier with editing, but the actual assumption that each dialog is exclusively visible would be no longer true, so it might cause complications)
- additional validation metrics, like statistical tests
- an option to create (and replace with) a metanode from a (proper, closed) selection of nodes without re-executing would be nice
From development perspective: Low hanging fruits:
- I would not mind if the DialogComponents were had a generic parameter of the accepted SettingsModel’s type.
- I would not mind a
toString() (easier debug) and a factory method (easier usage, as there is type inference in Java) to the Pair class.
- The external dependencies might be in different bundles for the KNIME plugins (with the proper version numbers). That would increase the reusability of those libraries, ease the fixes for external bugs.
- Option to open a help view nearby the dialogs
- a wizard to create new metanode extension
- follow relative links to help (if possible be compatible with the generated help content) in Node Description (details)
More fundamental changes:
- It would be nice if there were an option to use Guice 2.0 (or other DI framework) scopes for execution/views. (It would help testing in smaller units.)
- I really miss options to (automatically) test my nodes functionality. I know this might be hard task (mostly because of the SWT/Swing problems), but I would appricieate if it were available.
- related: allow to create and put nodes to workflows, connect them programmatically from cheat sheets
- Sometimes I would like to have lazy evaluation of nodes. Like putting the formula we want to compute as a formula, and evaluate at the place of view/output with the ability to modify/generate another form of it. (Use cases in my mind:
(Maybe it would be enough if the formulae were on the variable stack.)
- do some changes in input data and export the results as an Excel sheet with the original data and the computations;
- for legends of visualisation could use the information how that value is computed)
- Create interface (or special nodes) for the programmatic change of view parameters (and create additional outports (for example to up or down direction to clearly distinguish from the other outports))
- this would allow to generate images with predefined parameters (or with different parameters if we are in a loop)
Hope some of these are meaningful requests.
thanks a lot for your useful feature requests. I would like to add a comment on some of the mentioned requests.
Request 1.3 Venn Diagram:
If I understand the request right we have already the Set Operator node that does set operations on two input tables e.g. intersection, union, complement and exclusive-or. In order to enable the coloring of the result table I would have to add a new column e.g. source with values like first, second, both that could be used in the color manager.
Request 1.9 GroupBy node:
The count operation does count the number of members (including the missing values) per group independend of the selected aggregation column. As long as you have one column that is not used for grouping you can count the members of each group.
Thanks Tobias for the comments.
I know the
Set Operator node, but it is working only for two inputs, has no view, and selects only one part of interest.
GroupBy and its count function, and also liked when I had enough columns. But not really liked when there were not, and I had to add a new one. (I know the workaround is really easy, so it is not important, just a bit annoying.) Anyway, if there are solutions for other requests I am all ears.
One more annoying thing: The Node.dtd file is a little bit too restrictive, especially regarding the HTML elements. I would like something like this (although I am not an expert in DTDs, HTML):
<!ELEMENT li (#PCDATA | br | b | i | u | a | tt | ul | ol | sup | sub)* > <!ELEMENT h3 (#PCDATA | br | b | i | u | a | tt | ul | ol | sup | sub)* > <!ELEMENT h4 (#PCDATA | br | b | i | u | a | tt | ul | ol | sup | sub)* > <!ELEMENT h (#PCDATA | br | b | i | u | a | tt | ul | ol | sup | sub)* > <!ELEMENT b (#PCDATA | br | b | i | u | a | tt | ul | ol | sup | sub)* > <!ELEMENT i (#PCDATA | br | b | i | u | a | tt | ul | ol | sup | sub)* > <!ELEMENT u (#PCDATA | br | b | i | u | a | tt | ul | ol | sup | sub)* > <!ELEMENT a (#PCDATA | br | b | i | u | a | tt | ul | ol | sup | sub)* > <!ELEMENT tt (#PCDATA | br | b | i | u | a | tt | ul | ol | sup | sub)* > <!ELEMENT pre (#PCDATA | br | b | i | u | a | tt | ul | ol | sup | sub)* > <!ELEMENT sup (#PCDATA | br | b | i | u | a | tt | ul | ol | sup | sub)* > <!ELEMENT sub (#PCDATA | br | b | i | u | a | tt | ul | ol | sup | sub)* > Thanks, gabor
There is certainly need of a Venn/Euler diagram generator.
I'd recomend vennmaster since that is the only one in Java that is able to deal with more than 4 circles.
Another general request would be to reduce the number of nodes by putting more functionality into one node. For example, could we have one file reader node with a drop down for different files, or one loop start node with a drop down of which kind of loop we want to start? As a relatively new user to KNIME the learning curve is steeper with so many nodes; I know we talk about 1,500 nodes as a good thing, but I think in some cases would be better to collapse the number and make it much easier to "remember" and find which node to use.
Thanks for all your hard work continually adding to the product functionality.
Oh, one other feature request: the ability to "favorite" a node and easily access favorites. This would also shorten the learning curve for a new KNIME user, reduce the searching time. Would be great!
Not exactly a feature but I would love to see some tutorials for using Python in KNIME (strangely the tutorials focus on Java and R). At the moment I am not even sure which Python node does what and how to run a small piece of code. It would be nice to know how the in and out ports are represented in the code. I would really love to use Pyton in KNIME!
Hi @alkopop79 -
I know it’s not a tutorial per se, but have you looked at this blog post by Vincenzo? It provides an example of implementing a logistic regression model using Python, and compares it to other algorithms. It might be enough to get you started…
It is somehow hidden but there is a “Favorite Nodes” View, which you can open View>Other>Favorite Nodes. You can drag nodes from the node repository to the view to add them to your list of favorite nodes.
Feature request: Exploded workflow diagrams
I use meta-nodes extensively, but sometimes I would like to have one big SVG that contains the contents of all meta-nodes in one big picture. Can I do that within KNIME?
let’s close this one here. For us it is easier if you kick-off a new topic for each Feature Request. Makes it nicer and cleaner.