Create heatmap from table, error "'XVariable' value must reference a single variable in the source table."
10 views (last 30 days)
Show older comments
Hello,
I have a problem when trying to create a heatmap from this table
I want the y axis to display the IDs and the x axis to display the 6 different Snacks, the table is about the Liking mean_rating of the IDs for the snacks (nevermind the phases column).
When I try to create a heatmap with
heatmap(data_mean_liking, data_mean_liking.Snack, data_mean_liking.ID)
it gives me the following error: "'XVariable' value must reference a single variable in the source table."
I don't really understand the error message or how to display the heatmap I want.
Thanks for the help!
Edit: I have included part of the table for trying out.
0 Comments
Answers (1)
dpb
on 21 Feb 2021
The x,y variables for a table are given as the names of the wanted columns; the dot notation returns the data.
heatmap(data_mean_liking, 'Snack', 'ID')
7 Comments
dpb
on 22 Feb 2021
The issue is that the heatmap function will count every element as different even if the average rating differs by only machine epsilon--it is every unique cross-comparison which almost certainly will end up also be 1:1 for each cell just as is the ID.
Are the 'phases' discrete rankings or independent trials or what?
However you try to agglomerate over levels will be some loss of individual precision, yes, but that's the price you'll have to pay to be able to summarize across multiple snacks/individuals to show trends instead of every separate evaluation as one observation.
I don't see a way around that.
See Also
Categories
Find more on Data Distribution Plots in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!