Loop to send multiple charts to report?

I want to create a report (or other printable output) with multiple charts, each with the same format and structure but displaying a different filtering of the same data. I've created a workflow with the appropriate loop and filters.

However, none of the chart nodes seems to have a chart/image as output (which makes me wonde what the "Image to Report" node is for) - and the "Data to Report" node seems to result in only a single report dataset, so I'd have to manually recreate the filtering from my workflow.

Is what I want to do possible in KNIME, and if so how do I do it?

Hi Mark,

The image port is mainly used in conjunction with the "R View" node. The idea is that you create your view in R, possibly collect a sequence of views in a loop, and finally send them to the reporting.

We uploaded a demo workflow to the example flow server. You find it under /010_Reporting/010005_KNIME_UGM_Example_SoccerDataWithR.

This workflow was presented during the last KNIME user group meeting. It shows how to use multiple data to report nodes, workflow switches and, most notably, the R View node in a loop. The data and report is not all that meaningful but the workflow is interesting.


You can very easily have multiple datasets for using in graphs, just connect up all the appropriately filtered tables to different "Data to Report" nodes. Make sure you rename these "Data to Report" nodes to something meaningful as these names will be seen in the Report Designer. You can then for the graphs select from any of these "Data to Report" nodes.

Is this what you require ?



I think what you want to do requires you to add an iteration column in the configuration of your loop end node, and then follow with a 'to report' node. 

Then in the report, insert a table containing 1 row and 1 column, and attach the dataset from your report.

Now, drag a chart into this cell, and set it up as you require.  In the select data tab of the wizard, select the 'inherit data from container' option, and select 'Inherit columns only' from the drop down.  Drag the iteration column onto the 'Y-series grouping' box.

I think this will do what you want!  Let me know if not, and I will try to figure how to post an extremely artificial example!


Hi everyone, I am also trying to do similar thing, just that I would like to have mutliple tables which come out of the loop as separate tables in the report.
Steve, your solution works if one is interested to have the data separated but still in one chart, but what if one would like to show really separate charts, each as separate figure? Is this possible?

In my case, I have the table with the iteration column, but how do I make N tables out of it in the BIRT report, one for each iteration number?
Is there some alternative solution?

Thanks a lot!

I think if you create the able in the report as a single table, and then select 'create new group' from the contextual menu within the table you can get what looks to all intents as a separate table for each group if you group on the iteration number.  Note that you also have options like showing the group name at the top of each group, starting each group on a separate page, and adding things like blank lines between groups in the table too.

Hope that helps,


Hi Steve,

Thanks a lot for the answer! Indeed the grouping method works, and I can show for example every group in a separate page in pdf.

What I still lack is, to repeat another table (not the ones which are grouped), always on top of each page - do you know if this is possible and how? Something like a info table which will be repeated on every page.

My problem is that I have three columns, in each I group by the same value but the tables show different things and have therefore different lengths. And then in the html view the three columns are not aligned - if you can understand what I mean. The length for different group can change. Perhaps what you said "adding things like blank lines between groups in the table" can help me exactly? Do you know where can I find this option, I tried in edit group but can't see anything similar?

To ilustrate, in html I get something like this:
Group1 Group1 Group1
Res11 Var11 Tot11
Res12 Var12 Group2
Res13 Group2 Tot21
Group2 Var21 Tot22
Res21 Var22

And I would like to have:
Group1 Group1 Group1
Res11 Var11 Tot11
Res12 Var12
Group2 Group2 Group2
Res21 Var21 Tot21
Var22 Tot22

I asked also in the Eclipse forum, but got no answer so far :(.

The repeating table question seems easy, too, but can't find how to do it so far.

Any help would be appreciated!