I am using Mathematica 9, and have a data set
frequencyList = {{2474, 190538, 431994, 427498, 327605, 118881, 23976,
2396, 232}, {16, 33353, 278360, 381675, 373560, 170125, 30784,
1996, 165}, {3, 4405, 100438, 209268, 216642, 116648, 23048, 1317,
115}, {1, 481, 27457, 84359, 99450, 61592, 14431, 907, 88}, {0, 62,
6539, 28778, 40288, 28101, 7846, 541, 52}, {0, 9, 1394, 9747,
17079, 13422, 4117, 305, 27}, {0, 4, 324, 3265, 7736, 7252, 2436,
198, 32}, {0, 10, 308, 1753, 6279, 8942, 4473, 447, 33}}
which represents the number of live births in 2015 in the USA. Rows index the birth "parity" (birth order) and columns index the mothers' age in 5-year blocks: 10≤age<15, 15≤age<20, etc. It is an 8 x 9 matrix.
With the parity and age conjoined, the data appears as
parityAgeFrequencyTable =
Table[{i, j*5 + 7.5, frequencyList[[i, j]]}, {i, 8}, {j, 9}]
{{{1, 12.5, 2474}, {1, 17.5, 190538}, {1, 22.5, 431994}, {1, 27.5,
427498}, {1, 32.5, 327605}, {1, 37.5, 118881}, {1, 42.5,
23976}, {1, 47.5, 2396}, {1, 52.5, 232}}, {{2, 12.5, 16}, {2, 17.5,
33353}, {2, 22.5, 278360}, {2, 27.5, 381675}, {2, 32.5,
373560}, {2, 37.5, 170125}, {2, 42.5, 30784}, {2, 47.5, 1996}, {2,
52.5, 165}}, {{3, 12.5, 3}, {3, 17.5, 4405}, {3, 22.5, 100438}, {3,
27.5, 209268}, {3, 32.5, 216642}, {3, 37.5, 116648}, {3, 42.5,
23048}, {3, 47.5, 1317}, {3, 52.5, 115}}, {{4, 12.5, 1}, {4, 17.5,
481}, {4, 22.5, 27457}, {4, 27.5, 84359}, {4, 32.5, 99450}, {4,
37.5, 61592}, {4, 42.5, 14431}, {4, 47.5, 907}, {4, 52.5,
88}}, {{5, 12.5, 0}, {5, 17.5, 62}, {5, 22.5, 6539}, {5, 27.5,
28778}, {5, 32.5, 40288}, {5, 37.5, 28101}, {5, 42.5, 7846}, {5,
47.5, 541}, {5, 52.5, 52}}, {{6, 12.5, 0}, {6, 17.5, 9}, {6, 22.5,
1394}, {6, 27.5, 9747}, {6, 32.5, 17079}, {6, 37.5, 13422}, {6,
42.5, 4117}, {6, 47.5, 305}, {6, 52.5, 27}}, {{7, 12.5, 0}, {7,
17.5, 4}, {7, 22.5, 324}, {7, 27.5, 3265}, {7, 32.5, 7736}, {7,
37.5, 7252}, {7, 42.5, 2436}, {7, 47.5, 198}, {7, 52.5, 32}}, {{8,
12.5, 0}, {8, 17.5, 10}, {8, 22.5, 308}, {8, 27.5, 1753}, {8, 32.5,
6279}, {8, 37.5, 8942}, {8, 42.5, 4473}, {8, 47.5, 447}, {8, 52.5,
33}}}.
I would like to display this data as a 3-d histogram — sort of a boxy version of
ListPlot3D[frequencyList, PlotRange -> All]
with well-defined bins 1 baby x 5 years in size, along with axis labels and tick marks.
I didn't find this question already listed… I hope it's not redundant.
I'm also wondering if there is such a thing as HistogramDistribution for bivariate data like this, since I will have some ugly computations to do with the data.