This node plots a 2D Kernel density function based on an incoming data table

A variety of kernel estimators are available, as shown in the table:

Name | Function |
---|---|

UNIFORM | K(u) = 0.5 (|u| ≤ 1), 0 (|u) > 1); aka 'Uniform' or 'Boxcar' |

TRIANGLE | K(u) = 1-|u| (|u| ≤ 1), 0 (|u) > 1) |

EPANECHNIKOV | K(u) = 3•(1-u²)/4 (|u| ≤ 1), 0 (|u) > 1) |

QUARTIC | K(u) = 15•(1-u²)²/16 (|u| ≤ 1), 0 (|u) > 1) |

TRIWEIGHT | K(u) = 35•(1-u²)³/32 (|u| ≤ 1), 0 (|u) > 1) |

TRICUBE | K(u) = 70•(1-|u|³)³/81 (|u| ≤ 1), 0 (|u) > 1) |

GAUSSIAN | K(u) = e^(-u²/2) / √(2π) |

COSINUS | K(u) = (π/4)•cos(πu/2) (|u| ≤ 1), 0 (|u) > 1) |

LOGISTIC | K(u) = 1/(e^u + 2 + e^-u) |

SIGMOID | K(u) = 2/(π•(e^u + e^-u)) |

SILVERMAN | K(u) = 0.5•e^(-|u|/√2)•sin((|u|/√2) + (π/4)) |

In the 2D case, u is a vector. The 'Kernel Symmetry' option controls how the 1-dimensional 'Kernel Estimator' is applied, as shown in the table

Name | Function |
---|---|

RADIAL_MULTIPLICATIVE | The kernel estimator is applied multiplicatively across dimensions, e.g. K(u) = K(u(x)) • K(u(y)), where u(x) is the x-dimension component of u, and u(y) the y-dimension component |

SPHERICAL | The kernel estimator is applied spherically symmetrically - i.e. any point of the same distance from the kernel estimator center has the same value. This is equivalent to K(u) = K(√uᵀu) |

The bandwidth effects the 'smoothness' of the kernel density function. There are a number of methods to automatically guess a suitable bandwidth. In this node we only offer three options, as shown in the table below. For further details see the Wikipedia Multivariate Kernel Density estimation page. Bandwidths and estimation methods are set independantly for each dimension. The bandwidth matrix, H is a diagonal matrix. Currently off-diagonal elements are not supported.

The methods offered are:

Name | Function |
---|---|

Silverman | Bandwidth is estimated using the Silverman approximation (H = stdDev * [4 / ((d + 2) * n)]^(1 / (d + 4)), where d is thenumber of dimensions and n the number of datapoints) |

Scott | Bandwidth is estimated using the Scott approximation (H = stdDev / n^(1 / (d + 4)), where d is thenumber of dimensions and n the number of datapoints) |

User Defined | The user specifies the bandwidth (H) |

This node was developed by Vernalis Research. For feedback and more information, please contact knime@vernalis.com

- X-Values Column
- The column in the incoming table containing the x-values from which to generate the kernel(s)
- X-Values Column
- The column in the incoming table containing the y-values from which to generate the kernel(s)
- Kernel Estimator
- The Kernel function to apply at each data point. See above for details of the individual kernel estimators
- Kernel Symmetry
- The kernel symmetry function to be applied to combined kernel estimators from the x- and y-dimensions. See above for further details.
- X-Values Column Bandwidth
- The bandwidth estimation method to used for the x-dimension. See above for details
- Bandwidth (H x)
- User-defined bandwidth
- Y-Values Column Bandwidth
- The bandwidth estimation method to used for the y-dimension. See above for details
- Bandwidth (H y)
- User-defined bandwidth
- Number of grid points along axis
- The number of grid points to calculate the kernel density function value for
- Number of outliers (% of dataset)
- The %age of the dataset to show as outliers. Outliers are defined here as the first n points when sorted by increasing value of the kernel density function
- Outlier Size
- The size of the outlier symbols
- Outlier shape
- The plot symbol to use for the outliers
- Outlier Colour
- The colour of the outlier symbols
- Auto-range x-Axis
- Should the x-Axis range be calculated automatically?
- x-Axis Range
- The manual axis range
- Auto-range y-Axis
- Should the y-Axis range be calculated automatically?
- y-Axis Range
- The manual axis range
- Show legend
- The colour spectrum or contour colours
- Show bandwidths (H) on axis labels
- Should the bandwidth be shown on the axis label (or in the legend if a grouping column is selected)?
- Upper bound
- The colour used for the highest density regions
- Lower bound
- The colour to use for the lowest density regions
- Number of Contours
- The number of contours to plot. If this value is '0', then a continuous colour gradient will be used
- Fill Contours
- Should the contours be filled with solid colour, or only drawn as contour lines? Filled contours show all areas between contour levels as the same block colour
- Contour Interval Schema
- The method used to determine contour intervals. Options are 'LINEAR', where contours are spaced equally across the intensity range, and 'QUANTILE' where the contours are spaced to give equal areas of each contour interval

- Type of Image
- The type of the created image can either be png or svg. PNGs are mostly smaller, SVGs provide details about plot and the possibility to be changed individually
- Title of Graph
- The title of the graph shown above the generated image. If the title is not activated, no title will be shown
- Width of Image (in pixel)
- The width of the generated image, not the plot width
- Height of Image (in pixel)
- The height of the generated image, not the plot height
- Background Colour
- The color of the background of the plot. Hence this color is used for the empty space in a plot
- Plot background Alpha
- The transparency of the plot background can be modified using an additional alpha value. An alpha value of 1 does not change the background transparency. Decreasing the alpha value will increase the plot background transparency
- Scale Font Size
- Factor changes the font sizes within the JFreeChart view. A value greater the 1 increases all view fonts, a value between 0 and 1 decrease them

- 2D Kernel Density Plot
- View showing the 2D Kernel Density Plot

- No workflows found

- No links available

You want to see the source code for this node? Click the following button and we’ll use our super-powers to find it for you.

To use this node in KNIME, install the extension Vernalis KNIME Nodes from the below update site following our NodePit Product and Node Installation Guide:

v5.3

A zipped version of the software site can be downloaded here.

Deploy, schedule, execute, and monitor your KNIME workflows locally, in the cloud
or on-premises – with our brand new **NodePit Runner**.

Do you have feedback, questions, comments about NodePit, want to support this platform, or want your own nodes or workflows listed here as well? Do you think, the search results could be improved or something is missing? Then please get in touch! Alternatively, you can send us an email to mail@nodepit.com, follow @NodePit on Twitter or botsin.space/@nodepit on Mastodon.

**Please note that this is only about NodePit. We do not provide general support for KNIME — please use the KNIME forums instead.**