Using Graph Builder to visualize my activity data collection patterns
Nov 4, 2014 11:31 AM
Before finalizing my Discovery Summit 2014 poster on my personal diet and fitness data, I asked my colleague Xan Gregg (lead developer of Graph Builder in JMP) to review my poster draft. By the time Xan and I sat down at my computer, I had created several graphs that I liked. I had also reviewed a helpful set of graph suggestions Xan wrote for JMP Blog authors and as a result, edited my graph titles to better reflect their main messages and improved my axis label descriptions. (By the way, if you would like to see Xan show how to create a number of interesting graphs in Graph Builder, including another graph from my poster, you can see the recording of his Discovery Summit talk titled "Unlocking the Secrets of Graph Builder.")
Together, Xan and I looked at the first graph on my poster, which I used to show how my seasonal activity patterns were confounded with differences in how much I wear my BodyMedia® FIT® armband. I had experimented with line and bar graphs for this data, and by the time I showed it to Xan, I had settled on using an area graph to show how the mean percentage of time I wore the armband (top, in blue) each week tracked very closely with my mean step count (bottom, in red).
Upon seeing the draft version of this graph, Xan recommended:
Reordering the sections of the graph to tell a better story.
Using Y axis variables for armband wear and activity with the same units (hr:m).
Using a nested X axis for a hierarchical display of month and year.
Adding annotations to draw attention to a key area of the graph.
Here is the final version that I used in my poster:
The annotations that I added draw attention to the fact that my device usage patterns tend to be different in the summer and winter. I wear my armband less with sleeveless and short-sleeve outfits because it’s rather conspicuous on my upper arm. During the summer of 2012, you can see that I actually wore the armband more regularly, and I ended up with a strap tan line that I didn’t like. As a result, I wore it less during the summers of 2013 and 2014.
Clearly, I made a conscious decision to use the armband less in the summer without realizing just how much impact it could have on the accuracy of my activity and step measurements. Now I know that I will have to treat this data carefully when analyzing it further. If I had not explored my activity and usage data first to remind me of this usage pattern, I could have created any number of plausible explanations for why my activity levels were so much lower during the hot North Carolina summer months.
Although I am unlikely to change my summer wear pattern for the armband, I have been experimenting with step counting apps on my phone that can provide supplementary activity estimation data. The iPhone Moves app seems especially good at passive data collection on my movements and activity, but that topic probably deserves its own blog post!
To reproduce my activity area graph with your own data in Graph Builder, open a data table containing an activity measure and a hours of usage measure in hr:m format. If you don’t yet have Year and Month transformations of your date variable in your table, you can create them by right-clicking on your Date variable in the Graph Builder variable chooser and adding new transform columns from the Date Time menu. I used a Value Ordering property on the Month variable to create a Month Name column and made sure that Year and Month Name were specified as Ordinal.
Then, to create the graph, drag:
Year to the X axis.
Month Name to the X Axis (just above Year) so the axis has Month Name nested in Year.
Activity to the Y Axis.
Time Onbody to the Y axis just below Activity so they appear in separate graph sections.
To complete the graph, change the element type to Area using the icon at the top of the Window, adjust your Y-axis, graph title and axis titles if desired, and add one or more annotations from the Tools menu. You can right-click on annotations to change their appearance to match your graph like I did. Stay tuned for the next post where Xan and I show how I summarized my food log compliance data using Graph Builder!
Check out the first blog post in this series to learn more about my interest in quantified self (QS) data analysis and my JMP Discovery Summit 2014 e-poster that explored 1,316 days of my activity and food log data. You can read more details about how I exported my Excel-formatted Activity Summary files and Food Log files from BodyMedia®’s Activity Manager software and imported them into JMP. I also shared how I used the JMP 12 Recode platform to clean my imported data table. I wrote a JMP add-in available on the JMP File Exchange that you can use to import your own files. You can find a copy of my e-poster on the JMP User Community. It’s free to join the community, where you can learn from JMP users all over the world!