For visualizations, I do two things... (1) use little scripts to generate gnuplot input, (2) convert ledger files to beancount files, and use fava. Both have their place. For forecasting, ledger has some built-in capabilities, although I've never used them.