Running `fpos show db` did not generate any graphs
shasheene opened this issue · comments
Good work guys, this tool looks perfect for my needs. I can see myself using and contributing to this tool consistently for years to come...
However, I've encountered an issue that I don't have the context (or Python background) to resolve myself.
I compiled fpos on an x86_64 Debian Stable (Jessie) system I've created a new database named 'bank' and have loaded in some historic data from three ANZ accounts (daily transaction, a short-term saver and a long-term saver). After categorizing all the transactions, I try and generate a graph and get the following warnings:
:~/Documents/fungit/fpos/banking$ ../bin/fpos show bank
/home/sge/.local/lib/python3.4/site-packages/scipy/stats/_distn_infrastructure.py:1903: RuntimeWarning: invalid value encountered in multiply
lower_bound = self.a * scale + loc
/home/sge/.local/lib/python3.4/site-packages/scipy/stats/_distn_infrastructure.py:1904: RuntimeWarning: invalid value encountered in multiply
upper_bound = self.b * scale + loc
Description | N | Period | Mean Value | Annual Value | Monthly Value
PAYMENT TO PAYPAL [redacted] | 56 | 14 | -41.67 | -1086.31 | -90.53
EFTPOS [redacted] METROCARD [redacted] | 9 | 28 | -27.78 | -362.10 | -30.18
VISA DEBIT PURCHASE CARD [redacted] | 17 | 11 | -9.92 | -329.02 | -27.42
VISA DEBIT PURCHASE CARD [redacted] | 6 | 90 | -24.76 | -100.42 | -8.37
VISA DEBIT PURCHASE CARD [redacted] | 6 | 62 | -10.00 | -58.87 | -4.91
VISA DEBIT PURCHASE CARD [redacted] | 4 | 193 | -14.92 | -28.21 | -2.35
CREDIT INTEREST PAID | 28 | 31 | [redacted] | [redacted] | [redacted]
PAY/SALARY FROM [redacted] | 7 | 31 | [redacted] | [redacted] | [redacted]
I did not get any windows showing graphs, or any image files created. I may simply be using fpos wrong, but I presume the RuntimeWarning is what causing the application to fail? Perhaps my CSV data needs manual editing?
(For the purposes of this GitHub issue, I've redacted descriptions and some values. The values don't appear to be malformed, I can forward the exact numbers if required to the maintainers via a non-public side channel if required, but I don't expect they will be)
Hmm, those warnings are odd, can you run with np.seterr(all='raise')[1] to see if we get a bit more information? You'll have to add it into one of the scripts, but to which one I guess is unclear.
There are a number of ways we can narrow it down without modification. You can use the 'visualise' plumbing command with the --graph switch to display different graphs (--help is your friend here). If you get some graph output this way we at least know matplotlib is functional. If none of the graphs appear maybe try reducing the database down to see if we can get a minimal test case?
[1] http://docs.scipy.org/doc/numpy/reference/generated/numpy.seterr.html#numpy.seterr