I personally see no wisdom in spending a hundred bucks or so for a graphing calculator unless that is a requirement for a course in which you are enrolled. Even then, some profs will not allow graphing calcs to be used during exams. As a tool for use doing homework assignments, Grapher, which is bundled with Mac OS X, is actually not a bad graphing calc app.
But, as suggested in earlier posts here, there are some situations when coding graphs using python offers advantages over a graphing calculator. Producing research paper quality work is one of those situations. It is not necessary to buy a MATLAB license. An excellent open source alternative to MATLAB, used by many scientists, is matplotlib:
http://matplotlib.org/index.html
There are many excellent matplotlib tutorials on the Net. My favorite is :
http://www.loria.fr/~rougier/teaching/matplotlib/
Engineering/science undergrads and beyond would be well served to become familiar with open source scientific packages for python such as [sympy (a CAS), numpy, scipy, matplotlib, and mayavi] which are bundled with sage if that is the Way you wish to go:
http://sagemath.org/
My personal choice was to install MacPorts of the open source scientific packages, rather than sage, because I wanted to use PyCharm as my python IDE:
http://www.macports.org/
http://www.jetbrains.com/pycharm/