Echarts on nightly build

Dear all,

I am “testing” the new node, it is a very flexible and great visualization library … but I am missing an image output port (e…g. to be used in reports).

Will that output being accessible in the future?

Best regards,

Jürgen

Build: KNIME 5.2.0_2023-11-27_01-00-10

Hi @Juergen -

Good question. Let me ask and see what I can find out.

Thank you very much @ScottF

Hey @Juergen,

the Generic Echarts view node should work in reports out of the box when having it in the component that generates the report. Is there a particular reason why you would need it as an image?
I still agree that having an image output would make it a bit more flexible and transparent.

Greetings,
Daniel

Hey @DanielBog,

I just checked it… and it works out of the box. Great!!

That might become my favorite visualization library in future as it combines

  • interactivity,
  • easy adaptation of the graph (eg font sizes, smaller in reports, larger for online meetings),
  • usablility in the new report environment and
  • large amount of different graph types

One point I have to check is the usability with larger datasets (more than 500 k rows).

Thank you very much for your hint. I really was not expecting this behaviour!

Best regards,

Jürgen

3 Likes

Hey @Juergen,

happy to hear that it works.
Looking forward to see what you can come up with, would also nice to see some of the custom made views wrapper in components and shared on the hub so others can make use of it.

Regarding performance, Echarts already brings some optimisations you can make use of and of course you can do as many JS enhancements as you want, but might be more involved. In general the performance of our dedicated nodes will most likely be superior as we can make optimisations to the data transfer if we know the exact shape of the required data beforehand, but I guess that is the price you have to pay for a generalised node. Would be nice if you share your findings as soon as you looked into it.

We are also very interested to extend our native view set, so let us know if you are missing a particular view.

Greetings,
Daniel

2 Likes

Hello @DanielBog ,

I will test the node with larger datasets using the official AP 5.2 release… So just two more days.

Best regards,

Jürgen

2 Likes

Hi @DanielBog,

just a first comment on the native views…

They are a great step forward, I like their interactivity and their interaction with other nodes in a component via selection and their “automatic report integration”…

But… I personally need a possibility to change colors, font sizes… (just think about the different font sizes for online meetings and reports)

The approach you have made with the Report Start node to define some common ground for the report (here just “Landscape” vs “Portrait” orientation) is a nice one. Just assume one would create something similar for the native View nodes. The advantage is that this system might grow from release to release content-wise but as well library wise (starting with the native views, add in a second step Echarts or Plotly…)

Just a thought…

Best regards,
Jürgen

1 Like

Hey @Juergen,

to me this sounds pretty much like a theme you can define somewhere. In that theme you can define your font sizes, font family, default colors…
To me this theme would be more on a global level, as I don’t want to set this up for every workflow, but maybe an approach similar to the report start node additionally would make sense, great idea.

Greetings,
Daniel

2 Likes

Hi @DanielBog,

as promised… I have compared in a simple test the native LinePlot with the Echarts LinePlot. I tried to create identical graphs (e.g with respect to the line size…)

The boundary conditions were:
Win 11 Laptop (3 years old), KNIME AP 5.2, RAM for KNIME: 8GB (from 16 GB)

The data table contained (real) test data with seven numerical columns used as y-axis values and a numerical column used as x-axis value (time in hours).
The number of rows was 550.000.

The process was:

  • reset the view node
  • store the workflow
  • “execute and open view” and start a timer
  • stop the time till the graph appears.

The native LinePlot needs app 20 sec to show the graph, Echarts app 50 sec. The experiment was repeated three times.

So… my conclusion would be:
In our technical environment the native node is more appropriate (especially if you want to show the interactive graph via a video call to customers) due to his speed advantage.

For me the remaining critical point is the missing “theming” of the native views.

An additional aspect is a discussion if a “global theme” for all views (in all workflows) defined eg in the KNIME preferences or an “individual” theming per view would be the best approach.
For me a global definition (if this would be the only option) would not be the desired solution, as I am using a complex workflow for interactive discussions via Teams (so… larger font sizes desired) and the same workflow for reporting, where smaller font sizes might be more appropriate.

It would be great to see in the future a “View theming” (perhaps in the meantime something like a css stylesheet for the native views).

Thank you very much for the creating, developing and maintaining KNIME!

Best regards,
Jürgen

1 Like

Hey @Juergen,

thanks for sharing the results. This is very interesting!
If it is only about the font sizes/ highlighting of one particular view in the Data App, the better solution would probably be some zooming/highlighting option in the views themselves. But that in general is a very interesting idea.
But I agree that both approaches have their up- and downsides and we will investigate in both directions as soon as we tackle theming.

Nevertheless I would be happy to get more insights in your workflow. If you are up for it, I am happy to organise a call to talk about it in more detail.

Greetings,
Daniel

Hi @DanielBog ,
Just write me a mail… we can chat end of the week if that’s fine for you.
Best regards,
Jürgen

Hi there,
I have also a question on his topic on of Echarts, is it possible to allow it to interect with the subscription and publishing of selection events?
The knimeService object seems not to be available.
Regards,
Matheus