GNOME Bugzilla – Bug 638971
Multicolumn report does not show more than one graph
Last modified: 2018-06-29 22:51:15 UTC
While updating my gnucash 2.3.0 to 2.4.0 I noticed that my reports with more than one graph was only able to pull one graph in the report I.e. in a income and expense chart, I would only see the expense pie chart. Currently, to solve this, I need to make severel reports instead of a multicolumn report. Any one encountered this too? And is there a solution to it?
Created attachment 178336 [details] Screenshot from an error in custom multi-column report When using GnuCash 2.4.0, using custom Multicolumn report will not display the charts except the first one. Got 'Unable to display pie chart' or 'Unable to push bar chart' error message. Please fix this bug quickly cause it's very important to me. Thanks in advance
Created attachment 179592 [details] Multicolumn report setup example
Can confirm this issue also. Have just upgraded from 2.2.9 to 2.4.0 (on Windows Vista Ultimate 64bit). Had an existing 2 x 2 multicolumn report that worked great in 2.2.9. Now only the top left report shows the graph, all the others state "Unable to push bar chart". Clicking on the "Single Report" link will open the report and chart correctly. Tried creating a new multicolumn report (see example above) with nothing more than two reports ("Expense Barchart" and "Net Worth Barchart" with default setup) - and get this issue.
I can confirm this issue also (Mac OS X 10.6.5, GNUCash 2.4.0). Seems the system can only handle one chart; the rest do not get displayed. These are the last lines in Console.log related to Mac OS X 2/3/11 3:59:53 PM [0x0-0x23023].org.gnucash.Gnucash[410] Thu Feb 3 15:59:53 EvansMini.local Gnucash-bin[410] <Error>: CGContextSetFont: invalid context 0x0 2/3/11 3:59:53 PM [0x0-0x23023].org.gnucash.Gnucash[410] Thu Feb 3 15:59:53 EvansMini.local Gnucash-bin[410] <Error>: CGContextSetFontSize: invalid context 0x0 2/3/11 3:59:53 PM [0x0-0x23023].org.gnucash.Gnucash[410] Thu Feb 3 15:59:53 EvansMini.local Gnucash-bin[410] <Error>: CGContextSetTextMatrix: invalid context 0x0 2/3/11 3:59:53 PM [0x0-0x23023].org.gnucash.Gnucash[410] Thu Feb 3 15:59:53 EvansMini.local Gnucash-bin[410] <Error>: CGContextClearRect: invalid context 0x0 2/3/11 3:59:53 PM [0x0-0x23023].org.gnucash.Gnucash[410] Thu Feb 3 15:59:53 EvansMini.local Gnucash-bin[410] <Error>: CGContextSetRGBFillColor: invalid context 0x0 2/3/11 3:59:53 PM [0x0-0x23023].org.gnucash.Gnucash[410] Thu Feb 3 15:59:53 EvansMini.local Gnucash-bin[410] <Error>: CGContextShowGlyphsAtPoint: invalid context 0x0 2/3/11 3:59:53 PM [0x0-0x23023].org.gnucash.Gnucash[410] Thu Feb 3 15:59:53 EvansMini.local Gnucash-bin[410] <Error>: CGContextSetFont: invalid context 0x0 2/3/11 3:59:53 PM [0x0-0x23023].org.gnucash.Gnucash[410] Thu Feb 3 15:59:53 EvansMini.local Gnucash-bin[410] <Error>: CGContextSetFontSize: invalid context 0x0 2/3/11 3:59:53 PM [0x0-0x23023].org.gnucash.Gnucash[410] Thu Feb 3 15:59:53 EvansMini.local Gnucash-bin[410] <Error>: CGContextSetTextMatrix: invalid context 0x0 2/3/11 3:59:53 PM [0x0-0x23023].org.gnucash.Gnucash[410] Thu Feb 3 15:59:53 EvansMini.local Gnucash-bin[410] <Error>: CGContextClearRect: invalid context 0x0 2/3/11 3:59:53 PM [0x0-0x23023].org.gnucash.Gnucash[410] Thu Feb 3 15:59:53 EvansMini.local Gnucash-bin[410] <Error>: CGContextSetRGBFillColor: invalid context 0x0 2/3/11 3:59:53 PM [0x0-0x23023].org.gnucash.Gnucash[410] Thu Feb 3 15:59:53 EvansMini.local Gnucash-bin[410] <Error>: CGContextShowGlyphsAtPoint: invalid context 0x0 2/3/11 4:00:21 PM [0x0-0x23023].org.gnucash.Gnucash[410] Thu Feb 3 16:00:21 EvansMini.local Gnucash-bin[410] <Error>: CGContextSetFont: invalid context 0x0 2/3/11 4:00:21 PM [0x0-0x23023].org.gnucash.Gnucash[410] Thu Feb 3 16:00:21 EvansMini.local Gnucash-bin[410] <Error>: CGContextSetFontSize: invalid context 0x0 2/3/11 4:00:21 PM [0x0-0x23023].org.gnucash.Gnucash[410] Thu Feb 3 16:00:21 EvansMini.local Gnucash-bin[410] <Error>: CGContextSetTextMatrix: invalid context 0x0 2/3/11 4:00:21 PM [0x0-0x23023].org.gnucash.Gnucash[410] Thu Feb 3 16:00:21 EvansMini.local Gnucash-bin[410] <Error>: CGContextClearRect: invalid context 0x0 2/3/11 4:00:21 PM [0x0-0x23023].org.gnucash.Gnucash[410] Thu Feb 3 16:00:21 EvansMini.local Gnucash-bin[410] <Error>: CGContextSetRGBFillColor: invalid context 0x0 2/3/11 4:00:21 PM [0x0-0x23023].org.gnucash.Gnucash[410] Thu Feb 3 16:00:21 EvansMini.local Gnucash-bin[410] <Error>: CGContextShowGlyphsAtPoint: invalid context 0x0 Seems like maybe GNUCash isn't actually calling the chart backend after the first one is placed in the report? I'm not a programmer :(
Just ran the debug log myself - this time doing nothing more than create a custom report, and adding expense barchart twice (that's all), and then click ok. Think this is the relevant section of the log (don't know how to do a trace in windows :-( ); <repeats the same pattern (<gnc.scm> list...) of below DEBUG messages a few more times before section below> * DEBUG <gnc.scm> list(#f) * DEBUG <gnc.scm> list() * DEBUG <gnc.scm> list(#f #f #f #f #f #f #f #f) * DEBUG <gnc.scm> list(#f #f #f #f #f #f #f) * DEBUG <gnc.scm> list(#f #f #f #f #f #f) * DEBUG <gnc.scm> list(#f #f #f #f #f) * DEBUG <gnc.scm> list(#f #f #f #f) * DEBUG <gnc.scm> list(#f #f #f) * DEBUG <gnc.scm> list(#f #f) * DEBUG <gnc.scm> list(#f) * DEBUG <gnc.scm> list() * DEBUG <gnc.scm> list(#f #f #f #f #f #f #f #f) * DEBUG <gnc.scm> list(#f #f #f #f #f #f #f) * DEBUG <gnc.scm> list(#f #f #f #f #f #f) * DEBUG <gnc.scm> list(#f #f #f #f #f) * DEBUG <gnc.scm> list(#f #f #f #f) * DEBUG <gnc.scm> list(#f #f #f) * DEBUG <gnc.scm> list(#f #f) * DEBUG <gnc.scm> list(#f) * DEBUG <gnc.scm> list() * DEBUG <gnc.scm> list(#t #t #f #f #f #f #f #f #f #f #f #f) * INFO <gnc.gui> [gnc_plugin_page_report_destroy_widget] destroy widget * INFO <gnc.gui> [gnc_plugin_page_report_destroy_widget] destroy widget * INFO <gnc.gui> [gnc_plugin_page_report_destroy_widget] destroy widget * CRIT <gnc.import.aqbanking> gnc_plugin_ab_account_selected: assertion `GNC_IS_PLUGIN_PAGE(plugin_page)' failed
Just upgraded to 2.4.3 - problem still exists :-( Noticed these duplicate bugs - all appear to report same problem; Bug 600487 Bug 641627 Bug 635636
Problem persists with 2.4.4
*** Bug 600487 has been marked as a duplicate of this bug. ***
*** Bug 635636 has been marked as a duplicate of this bug. ***
*** Bug 641627 has been marked as a duplicate of this bug. ***
Same problem with 2.4.5, 2.4.6
Same problem with 2.4.7, tried both Fedora 15s RPM and self-compiled from SVN: http://svn.gnucash.org/repo/gnucash/branches/2.4 revision 21116 Used --with-html-engine=webkit for configure, because gtkhtml 3.x was not available. Also reported in here: https://bugzilla.redhat.com/show_bug.cgi?id=728734 It worked with Fedora 14 and gtkhtml 3.14, I remember having same problems with the official Fedora RPM version, and self-compiling from SVN helped back then. Did a check on that with my old Fedora 14 installation, and could confirm the following cases: * Fedora 14 RPM does not work * self-compiled from SVN works * self-compiled from SVN with webkit engine does not work Checked how the Fedora RPMs are compiled, and they use webkit. So the problem seems to be webkit related.
I have the same problem with version 2.4.7 running on Windows 7 Why is this unconfirmed still? Many people complaining, and very easy to verify.
(In reply to comment #13) > I have the same problem with version 2.4.7 running on Windows 7 > > Why is this unconfirmed still? Many people complaining, and very easy to > verify. Good point. I have changed the status.
Issue Persists with GnuCash 2.4.10 on Mac OS X 10.7.
Problem persists with 2.4.11 on Windows 7 64
*** Bug 675455 has been marked as a duplicate of this bug. ***
*** Bug 682652 has been marked as a duplicate of this bug. ***
Same issue here, has been around since 2.4.1. Currently using 2.4.11, built from svn r22268 on 2012-07-15. Running on Win 7 Enterprise 64-bit.
I finally managed to trace this issue to its root cause. I have committed a fix in trunk (r22542) and 2.4 (r22543). It will be available in the next GnuCash release.
Created attachment 242789 [details] Screenshot GnuCash 2.5.0 (Ubuntu 12.04) Unfortunately I cannot confirm the fix. See the attached screen shot. GnuCash 2.5.0 on Ubuntu 12.04 built from git rev f6de8e1+ The former error message is gone but all graphs overlap in one table cell. This bug should be re-opened.
Thank you for verifying. I can indeed confirm the report got broken again since I applied the fixes. I wonder if the jqplot code is interfering.
The issue was indeed jqplot related: jqplot uses a div with a predefined id to render its charts. This works fine when there's only one chart on the report. It breaks once multiple charts are added to one report (as is the case in the multi column report). I have fixed this by generating a unique id for each chart to render (r22935 in svn). The fix will appear in the next development snapshot. The stable branch shouldn't be affected, because that one is not using jqlot based charts. Thanks again for testing and reporting the issue.
Created attachment 248772 [details] Screenshot GnuCash 2.5.3 (Ubuntu 12.04) Looks much better then before, now all charts are displayed. Nevertheless, there is still an issue about it: When you have a mix of chart types (bar charts and pie charts) then the pie charts do not work if the last chart is a bar chart. Example: Run the Welcome Sample Report from the Sample & Custom menu. The Expense and Income charts will be displayed as bar charts even though they have been added as pie charts (see attachment). Effect: There is no data in the charts. I tried the following: Create a new custom multicolumn report and add an expense pie chart and an expense bar chart. Order A: 1. Expense Pie Chart 2. Expense Bar Chart -> same effect has above. Order B: 1. Expense Bar Chart 2. Expense Pie Chart -> works as expected Let me know if this effect should be handled in a separate bug - I can copy this comment over into a new bug, no problem. I was looking for an existing one but I did not find it.
Carsten, Thank you for the additional QA testing. I suspect the problem you experience is still an issue with the new jqplot code. Since the orignal bug was about a broken multicolumn report before jqplot was introduced, perhaps it's better to create a new bug report for the jqplot issues. Jqplot doesn't affect the 2.4 series (for which this bug report was initially created). So starting a new bug report will make it easier to track. Thanks!
Done. Comment 24 has been moved to: Bug 704525 - When you have a mix of chart types (bar charts and pie charts) then the pie charts do not work if the last chart is a bar chart
GnuCash bug tracking has moved to a new Bugzilla host. This bug has been copied to https://bugs.gnucash.org/show_bug.cgi?id=638971. Please update any external references or bookmarks.