This is a figure of altitude data from the GPS sensor. I managed to take it with me on a flight out to the midwest where I was meeting some friends, and I was really excited to be able to get such data.
Then I saw the same picture you're looking at now. The readings, while managing to capture the "gist" of what was going on, had errors in a number of places. All throughout the flight, readings were bouncing around between the true altitude and something else. As a matter of fact, that picture even has some data reduction methods applied to it already via throwing out values above 15000m.
The GPS lost signal as the plane took off, but thankfully managed to reacquire signal it reached altitude. All the way through, however, the data was mangled. Sentence were cut short, or smashed together with other sentences. Sometimes the decimal point in the altitude reading simply got lost, nowhere to be found.
After implementing a bunch of data filters in MATLAB, I was able to improve the output significantly:
This is the kind of stuff that often happens in engineering. It's not a damning problem, it's not catastrophic, but it requires more time and effort than initially thought in order to come up with a workaround. No wonder major engineering programs get delayed! In a sense I'm glad to see this issue because that was part of the point of the project was to get hands-on engineering experience, and this is the type of experience that holds valuable lessons. It teaches you to be careful, teaches you the importance to testing not just at the integrated level but at the sub-system level as well, and teaches the importance of expecting the unexpected.