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.
Nothing sophisticated. I just post-date transactions in the journal and let the tool calculate and show me the running account balance. But it's very customizable in output format. As the other reply said, you can feed its output into any other suitable tools.