I'd suggest just using a good graphics program and using its defaults. This would normally look good enough, I imagine most journals would not be too fussy about such things. You probably also want to use a scripting language for reproducibility and efficiency. The following packages are reasonable choices, produce high quality graphics without much work, have reasonable defaults which can be tweaked if necessary, and export into the common image file formats like PDF, PNG etc. ggplot2
in particular is designed to be very high level and flexible, and is based somewhat on the Grammar of Graphics book by Wilkinson, which describes a high level approach to data visualization. Specifically, high level implies ignoring the small details of your graphic and letting the program taking care of it for you.
The R package ggplot2
already mentioned is quite popular. You could also try PGF/TikZ
and the plot package that uses it, pgfplots
. matplotlib
is another possibility, though I have not used it much. Also note that both R
and matplotlib
have PGF/TikZ
backends. For R
see TikZDevice
though it does not seem to be actively developed. For matplotlib
, see matplotlib: Typesetting With XeLaTeX/LuaLaTeX.