For whatever reason, Google's Adsense doesn't have a way to graph the data that it can generate in a report. It seems useless to generate an extremely large Advanced Report and not be able to graph it to see trends. I've created a simple Javascript parser of the Google Adsense CSV (comma separated values).
All you need to do is login to Adsense and generate a report that you'd like to graph. For example, you might click on Advanced Reports, and choose a date range of all time. A long list will be generated -- each row represents one day of Adsense data. Once the report has been generated, you need to click on the link at the top right of the table labeled CSV. It will prompt you for a download -- save it or open it directly into Notepad. Paste the file's contents into the textarea box below, then hit the 'Generate Graph' button. If you'd like to see how the graph looks, without messing around with any CSV files, you can click on 'Insert Random CSV Data' -- it will generate 100 random 'days' of fabricated Adsense data.

The Javascript simply splits the CSV data into rows, then into columns. It then uses a third-party Javascript graphing library to actually graph the data. I decided to use line.js (by S Balamurugan, http://www.sbmkpm.com), which also uses wz_jsgraphics.js (Walter Zorn, http://www.walterzorn.com). Both of these libraries were relatively simple to alter for my own specific needs, and they did exactly what I wanted them to do. I actually retrieved both of these libraries from an article on Dynamic Drive.
There are some server-side graphing alternatives, but I either didn't like the way they displayed the graph, or it simply couldn't parse the data correctly. Ideally, the source code for this project is simple enough that it can be easily customized to meet more advanced purposes. Please feel free to use, modify, and improve this to your liking.