Now when it comes to plotting (especially if 2D plotting) there's a lot of stuff around and it's very difficult to say which one is the best. My method is when I need some kind of plots I'll check what is around and usually chose the one I find it has the most pleasing presentations (so aesthetics is the main criteria whenever the offer is plenty).
That said some hypothesis for you to check out are (all free in some kind of form):
5) Xmind: http://www.xmind.net/ (Free with conditions; windows)
I've only used one or two (browser based) but there are many more. I interpreted your question as regarding end user software. If you would like more control over your charts I would also advise illustration software such as Inkscape (https://www.inkscape.org/en/) or programming libraries such as:
All python libraries (but there many other for other libraries. It's just that I don't know them). The last option (which I've never used, only heard about) I could recommend is DOT language (http://en.wikipedia.org/wiki/DOT_%28graph_description_language%29). It's read by several packages apparently. Look at something like this to make some tests:
I teach systems analysis and design so my students use a variety of different software for drawing different types of diagrams. I can suggest three free ones to you; they have also been mentioned by our colleagues earlier. See also the links at the bottom.
If your work is mostly oriented towards software design, you may try to use UML diagrams. Because I tend to dislike point-and-click tools, my current preference goes towards PlantUML. It is based on textual diagram description. It supports many UML diagrams, including Activity and State diagrams, which may suit your needs. PNG and SVG rendering are supported.