Cross-language feature support

This is a high-level overview of the features available in funkyheatmap. This section will be updated such that only a checkmark appears if all of the unit tests have been implemented and succeed.

id description R Python JS
Data input Allows for input of a data frame with items by row and features in the columns.
Column info Provides customization of columns, including geom, group, palette, and more.
Row info Allows for grouping and annotating rows.
Column groups Allows for grouping and annotating column groups.
Row groups Allows for grouping and annotating row groups.
Palettes Supports custom and standard color palettes for the heatmap.
Geom: funkyrect Supports ‘funkyrect’ geometry.
Geom: circle Supports ‘circle’ geometry.
Geom: rect Supports ‘rect’ geometry.
Geom: bar Supports ‘bar’ geometry.
Geom: pie Supports ‘pie’ geometry.
Geom: text Supports ‘text’ geometry.
Geom: image Supports ‘image’ geometry.
Numerical transformations Provides transformation capabilities for numerical columns.
Positioning options Options to control the positioning of various elements in the plot.
Subfigure labels Enables adding subfigure labels to different column groups.
Removed entries Supports removing specified entries from rows and replacing them with a label.
Label on hover Allow hovering over a result to see a label
Dynamic sort Allow sorting by clicking on the column name
Important

To do: Add items for each of the column info options: hjust, vjust, …

Unit tests

This table will be used to check whether each of these tests were implemented in each of the different funkyheatmap implementations.

name feature_id description
Test data input validity Data input Test whether the function handles valid data frame input correctly.
Test data input error handling Data input Test the function’s error handling when provided with an invalid data frame input.
Test column info validity Column info Test if the function processes valid column information correctly.
Test column info error handling Column info Test the function’s error handling when provided with invalid column information.
Test row info validity Row info Test if the function processes valid row information correctly.
Test row info error handling Row info Test the function’s error handling when provided with invalid row information.
Test column groups validity Column groups Test if the function processes valid column groups correctly.
Test column groups error handling Column groups Test the function’s error handling when provided with invalid column groups.
Test row groups validity Row groups Test if the function processes valid row groups correctly.
Test row groups error handling Row groups Test the function’s error handling when provided with invalid row groups.
Test palette custom validity Palettes Test if the function handles valid custom palettes correctly.
Test palette standard validity Palettes Test if the function handles valid standard palettes correctly.
Test palette error handling Palettes Test the function’s error handling when provided with invalid palettes.
Test geom funkyrect validity Geom: funkyrect Test if the function correctly renders ‘funkyrect’ geometry.
Test geom circle validity Geom: circle Test if the function correctly renders ‘circle’ geometry.
Test geom rect validity Geom: rect Test if the function correctly renders ‘rect’ geometry.
Test geom bar validity Geom: bar Test if the function correctly renders ‘bar’ geometry.
Test geom pie validity Geom: pie Test if the function correctly renders ‘pie’ geometry.
Test geom text validity Geom: text Test if the function correctly renders ‘text’ geometry.
Test geom image validity Geom: image Test if the function correctly renders ‘image’ geometry.
Test numerical transformations Numerical transformations Test if the function applies numerical transformations correctly.
Test positioning options Positioning options Test if the function handles positioning options like hjust, vjust, size, label correctly.
Test subfigure labels Subfigure labels Test if the function correctly adds subfigure labels to different column groups.
Test removed entries Removed entries Test if the function correctly removes specified entries from rows and replaces them with a label.
Important

Still need to implement each of these unit tests. The labels might need to be renamed accordingly.