Data Analysis Tool

Use the data analysis tool here:

As I’ve taught physics using the Modeling Instruction philosophy, we collect quite a few data sets about physical relationships that need to be analyzed.  I’ve tried a few ways for students to graph data:

Method Pros Cons
Graph Paper  * Requires a firm grasp of scales, slope, and y-intercept
* Flexible — few limitations
* No technology quirks to learn
 * Time-consuming
* Requires multiple iterations to linearize non-linear relationships
* Difficult to test several analysis methods to determine the best fit
* Best-fit lines, slopes, and y-intercepts are not as accurate
 Vernier LoggerPro  * Quick
* Takes care of units, labels, and titles
* Easily adjust what is graphed on each axis
* Support for force, motion, and other sensors
* Linear fit is available with 1 button click
* Supports graphing multiple data sets, a secondary y-axis scale, and many advanced features
 * Linearizing with calculated columns is somewhat cumbersome; requires quite a few steps
* For novices, the huge number of features make it difficult to remember the correct steps to get the desired results
* “Curve fit” is often used by students rather than the preferred method of linearizing data
* Not likely to use this software in other contexts
* Not widely available (though the site license is generous)
Microsoft Excel (or Google Sheets)  * Powerful and flexible
* Supports graphing multiple data sets, secondary y-axis scale, and many advanced features
* Likely to be used in college, industry, etc.
* Widely available (and for Google Sheets, free)
 * Need to set up own data table
* New versions of Excel do not label axes by default
* Google Sheets graphs lack some features and are not the most intuitive (though I haven’t used them in a couple years so perhaps they’ve improved)
* Again, the huge number of features often make it hard to find the desired functions

After having to guide students through the LoggerPro linearization process time and time again for each lab, I wanted to find a better solution.

I ended up writing a quick online data analysis tool (using the graphing capabilities of CanvasJS).  Check it out here.  It does most of what I need it to, which is to take a set of data, graph it, allow students to linearize it (graph y vs. x^2, y vs. 1/x, etc.), and output the best-fit line equation.

Improvements I may try to implement in the future:

  • CanvasJS does not allow formatted text on axis labels (so squared, cubed, etc. is displayed as ^2 and ^3) – Find a workaround?
  • Data input improvements (arrow keys for navigating)
  • Improve linearization interface somehow – still thinking about this
  • Display the squared, cubed, or inverse of a column in the data table (?)