Closed (duplicate)
Project:
Charts
Version:
5.0.x-dev
Component:
C3.js integration
Priority:
Normal
Category:
Bug report
Assigned:
Unassigned
Reporter:
Created:
13 Oct 2023 at 16:32 UTC
Updated:
15 May 2025 at 17:41 UTC
Jump to comment: Most recent, Most recent file
Comments
Comment #2
maxilein commentedFor now I just used title rewrite with " ".
Comment #4
andileco commentedCan you add an image of your rendered chart? I'm trying to understand what you don't want to see on the generated chart.
I will add at least a small commit to the issue fork that prevents an error from occurring.
Comment #6
maxilein commentedSome things must have changed in the latest dev version:
Now it is not an empty graph (with only axes). Now there is an ajax error:
XHRPOST
https://myserver/admin/structure/views/view/chart_bmgl_entwicklung_im_wj...
[HTTP/1.1 500 500 Service unavailable (with message) 179ms]
Uncaught
Object { message: "\nAn AJAX HTTP error occurred.\nHTTP Result Code: 500\nDebugging information follows.\nPath: /admin/structure/views/view/chart_bmgl_entwicklung_im_wj/preview/default\nStatusText: 500 Service unavailable (with message)\nResponseText: The website encountered an unexpected error. Please try again later.TypeError: Drupal\\charts_c3\\Plugin\\chart\\Library\\C3::stripLabelTags(): Argument #1 ($items) must be of type array, null given, called in /var/www/web/modules/contrib/charts/modules/charts_c3/src/Plugin/chart/Library/C3.php on line 271 in Drupal\\charts_c3\\Plugin\\chart\\Library\\C3->stripLabelTags() (line 413 of modules/contrib/charts/modules/charts_c3/src/Plugin/chart/Library/C3.php). Drupal\\charts_c3\\Plugin\\chart\\Library\\C3->populateAxes() (Line: 96)\nDrupal\\charts_c3\\Plugin\\chart\\Library\\C3->preRender() (Line: 213)\nDrupal\\charts\\Element\\Chart->preRender()\ncall_user_func_array() (Line: 111)\nDrupal\\Core\\Render\\Renderer->doTrustedCallback() (Line: 797)\nDrupal\\Core\\Render\\Renderer->doCallback() (Line: 386)\nDrupal\\Core\\Render\\Renderer->doRender() (Line: 204)\nDrupal\\Core\\Render\\Renderer->render() (Line: 474)\nDrupal\\Core\\Template\\TwigExtension->escapeFilter() (Line: 53)\n__TwigTemplate_4bebe2bf3ca6985fc270a75b6ffb16f8->doDisplay() (Line: 394)\nTwig\\Template->displayWithErrorHandling() (Line: 367)\nTwig\\Template->display() (Line: 379)\nTwig\\Template->render() (Line: 40)\nTwig\\TemplateWrapper->render() (Line: 53)\ntwig_render_template() (Line: 372)\nDrupal\\Core\\Theme\\ThemeManager->render() (Line: 445)\nDrupal\\Core\\Render\\Renderer->doRender() (Line: 204)\nDrupal\\Core\\Render\\Renderer->render() (Line: 474)\nDrupal\\Core\\Template\\TwigExtension->escapeFilter() (Line: 110)\n__TwigTemplate_8c2763fed73f62834a9d921e08ccd97a->doDisplay() (Line: 394)\nTwig\\Template->displayWithErrorHandling() (Line: 367)\nTwig\\Template->display() (Line: 379)\nTwig\\Template->render() (Line: 40)\nTwig\\TemplateWrapper->render() (Line: 53)\ntwig_render_template() (Line: 372)\nDrupal\\Core\\Theme\\ThemeManager->render() (Line: 445)\nDrupal\\Core\\Render\\Renderer->doRender() (Line: 458)\nDrupal\\Core\\Render\\Renderer->doRender() (Line: 458)\nDrupal\\Core\\Render\\Renderer->doRender() (Line: 458)\nDrupal\\Core\\Render\\Renderer->doRender() (Line: 204)\nDrupal\\Core\\Render\\Renderer->render() (Line: 148)\nDrupal\\Core\\Render\\Renderer->Drupal\\Core\\Render\\{closure}() (Line: 592)\nDrupal\\Core\\Render\\Renderer->executeInRenderContext() (Line: 149)\nDrupal\\Core\\Render\\Renderer->renderRoot() (Line: 66)\nDrupal\\Core\\Render\\MainContent\\AjaxRenderer->renderResponse() (Line: 90)\nDrupal\\Core\\EventSubscriber\\MainContentViewSubscriber->onViewRenderArray()\ncall_user_func() (Line: 111)\nDrupal\\Component\\EventDispatcher\\ContainerAwareEventDispatcher->dispatch() (Line: 186)\nSymfony\\Component\\HttpKernel\\HttpKernel->handleRaw() (Line: 76)\nSymfony\\Component\\HttpKernel\\HttpKernel->handle() (Line: 58)\nDrupal\\Core\\StackMiddleware\\Session->handle() (Line: 48)\nDrupal\\Core\\StackMiddleware\\KernelPreHandle->handle() (Line: 106)\nDrupal\\page_cache\\StackMiddleware\\PageCache->pass() (Line: 85)\nDrupal\\page_cache\\StackMiddleware\\PageCache->handle() (Line: 48)\nDrupal\\Core\\StackMiddleware\\ReverseProxyMiddleware->handle() (Line: 51)\nDrupal\\Core\\StackMiddleware\\NegotiationMiddleware->handle() (Line: 51)\nDrupal\\Core\\StackMiddleware\\StackedHttpKernel->handle() (Line: 704)\nDrupal\\Core\\DrupalKernel->handle() (Line: 19)\n", name: "AjaxError", stack: "@https://myserver/core/misc/ajax.js?v=10.1.6:196:32\n@https://myserver/core/misc/ajax.js?v=10.1.6:1889:3\n" }
ajax.js:196:32
error ajax.js:1194
complete ajax.js:597
jQuery 8
eventResponse ajax.js:785
Ajax ajax.js:635
jQuery 8
Ajax ajax.js:624
ajax ajax.js:267
loadAjaxBehavior ajax.js:47
forEach self-hosted:203
loadAjaxBehavior ajax.js:44
forEach self-hosted:203
attach ajax.js:52
attachBehaviors drupal.js:166
forEach self-hosted:203
attachBehaviors drupal.js:162
big_pipe.js:138
big_pipe.js:169
If you tell me what to look for I can look for that in firefox console.
Comment #7
maxilein commentedThat is what is logged by Drupal:
The last entry is a php error:
TypeError: Drupal\charts_c3\Plugin\chart\Library\C3::stripLabelTags(): Argument #1 ($items) must be of type array, null given, called in /var/www/web/modules/contrib/charts/modules/charts_c3/src/Plugin/chart/Library/C3.php on line 271 in Drupal\charts_c3\Plugin\chart\Library\C3->stripLabelTags() (line 413 of /var/www/web/modules/contrib/charts/modules/charts_c3/src/Plugin/chart/Library/C3.php).
And before that a warning:
Warning: Undefined array key "#labels" in Drupal\charts_c3\Plugin\chart\Library\C3->populateAxes() (line 271 of /var/www/web/modules/contrib/charts/modules/charts_c3/src/Plugin/chart/Library/C3.php)
#0 /var/www/web/core/includes/bootstrap.inc(164): _drupal_error_handler_real()
#1 /var/www/web/modules/contrib/charts/modules/charts_c3/src/Plugin/chart/Library/C3.php(271): _drupal_error_handler()
#2 /var/www/web/modules/contrib/charts/modules/charts_c3/src/Plugin/chart/Library/C3.php(96): Drupal\charts_c3\Plugin\chart\Library\C3->populateAxes()
#3 /var/www/web/modules/contrib/charts/src/Element/Chart.php(213): Drupal\charts_c3\Plugin\chart\Library\C3->preRender()
#4 [internal function]: Drupal\charts\Element\Chart->preRender()
#5 /var/www/web/core/lib/Drupal/Core/Security/DoTrustedCallbackTrait.php(111): call_user_func_array()
#6 /var/www/web/core/lib/Drupal/Core/Render/Renderer.php(797): Drupal\Core\Render\Renderer->doTrustedCallback()
#7 /var/www/web/core/lib/Drupal/Core/Render/Renderer.php(386): Drupal\Core\Render\Renderer->doCallback()
#8 /var/www/web/core/lib/Drupal/Core/Render/Renderer.php(204): Drupal\Core\Render\Renderer->doRender()
#9 /var/www/web/core/lib/Drupal/Core/Template/TwigExtension.php(474): Drupal\Core\Render\Renderer->render()
#10 /var/www/web/sites/default/files/php/twig/656b28a43f783_views-ui-view-preview-sec_QqrDZ1ouayskJwvNgwsFo4H_o/qJeZdp0BN9gKWB2RzakK8NriAcYijQ-BkkfYeOWKYJM.php(53): Drupal\Core\Template\TwigExtension->escapeFilter()
#11 /var/www/vendor/twig/twig/src/Template.php(394): __TwigTemplate_4bebe2bf3ca6985fc270a75b6ffb16f8->doDisplay()
#12 /var/www/vendor/twig/twig/src/Template.php(367): Twig\Template->displayWithErrorHandling()
#13 /var/www/vendor/twig/twig/src/Template.php(379): Twig\Template->display()
#14 /var/www/vendor/twig/twig/src/TemplateWrapper.php(40): Twig\Template->render()
#15 /var/www/web/core/themes/engines/twig/twig.engine(53): Twig\TemplateWrapper->render()
#16 /var/www/web/core/lib/Drupal/Core/Theme/ThemeManager.php(372): twig_render_template()
#17 /var/www/web/core/lib/Drupal/Core/Render/Renderer.php(445): Drupal\Core\Theme\ThemeManager->render()
#18 /var/www/web/core/lib/Drupal/Core/Render/Renderer.php(204): Drupal\Core\Render\Renderer->doRender()
#19 /var/www/web/core/lib/Drupal/Core/Template/TwigExtension.php(474): Drupal\Core\Render\Renderer->render()
#20 /var/www/web/sites/default/files/php/twig/656b28a43f783_views-view.html.twig_n7dITis8Df0prBw4FrEt5b-1p/SvMQ801z9ea0oAcV6iqRfYbNymVTFahn_Lr2YqWax4w.php(110): Drupal\Core\Template\TwigExtension->escapeFilter()
#21 /var/www/vendor/twig/twig/src/Template.php(394): __TwigTemplate_8c2763fed73f62834a9d921e08ccd97a->doDisplay()
#22 /var/www/vendor/twig/twig/src/Template.php(367): Twig\Template->displayWithErrorHandling()
#23 /var/www/vendor/twig/twig/src/Template.php(379): Twig\Template->display()
#24 /var/www/vendor/twig/twig/src/TemplateWrapper.php(40): Twig\Template->render()
#25 /var/www/web/core/themes/engines/twig/twig.engine(53): Twig\TemplateWrapper->render()
#26 /var/www/web/core/lib/Drupal/Core/Theme/ThemeManager.php(372): twig_render_template()
#27 /var/www/web/core/lib/Drupal/Core/Render/Renderer.php(445): Drupal\Core\Theme\ThemeManager->render()
#28 /var/www/web/core/lib/Drupal/Core/Render/Renderer.php(458): Drupal\Core\Render\Renderer->doRender()
#29 /var/www/web/core/lib/Drupal/Core/Render/Renderer.php(458): Drupal\Core\Render\Renderer->doRender()
#30 /var/www/web/core/lib/Drupal/Core/Render/Renderer.php(458): Drupal\Core\Render\Renderer->doRender()
#31 /var/www/web/core/lib/Drupal/Core/Render/Renderer.php(204): Drupal\Core\Render\Renderer->doRender()
#32 /var/www/web/core/lib/Drupal/Core/Render/Renderer.php(148): Drupal\Core\Render\Renderer->render()
#33 /var/www/web/core/lib/Drupal/Core/Render/Renderer.php(592): Drupal\Core\Render\Renderer->Drupal\Core\Render\{closure}()
#34 /var/www/web/core/lib/Drupal/Core/Render/Renderer.php(149): Drupal\Core\Render\Renderer->executeInRenderContext()
#35 /var/www/web/core/lib/Drupal/Core/Render/MainContent/AjaxRenderer.php(66): Drupal\Core\Render\Renderer->renderRoot()
#36 /var/www/web/core/lib/Drupal/Core/EventSubscriber/MainContentViewSubscriber.php(90): Drupal\Core\Render\MainContent\AjaxRenderer->renderResponse()
#37 [internal function]: Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray()
#38 /var/www/web/core/lib/Drupal/Component/EventDispatcher/ContainerAwareEventDispatcher.php(111): call_user_func()
#39 /var/www/vendor/symfony/http-kernel/HttpKernel.php(186): Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch()
#40 /var/www/vendor/symfony/http-kernel/HttpKernel.php(76): Symfony\Component\HttpKernel\HttpKernel->handleRaw()
#41 /var/www/web/core/lib/Drupal/Core/StackMiddleware/Session.php(58): Symfony\Component\HttpKernel\HttpKernel->handle()
#42 /var/www/web/core/lib/Drupal/Core/StackMiddleware/KernelPreHandle.php(48): Drupal\Core\StackMiddleware\Session->handle()
#43 /var/www/web/core/modules/page_cache/src/StackMiddleware/PageCache.php(106): Drupal\Core\StackMiddleware\KernelPreHandle->handle()
#44 /var/www/web/core/modules/page_cache/src/StackMiddleware/PageCache.php(85): Drupal\page_cache\StackMiddleware\PageCache->pass()
#45 /var/www/web/core/lib/Drupal/Core/StackMiddleware/ReverseProxyMiddleware.php(48): Drupal\page_cache\StackMiddleware\PageCache->handle()
#46 /var/www/web/core/lib/Drupal/Core/StackMiddleware/NegotiationMiddleware.php(51): Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle()
#47 /var/www/web/core/lib/Drupal/Core/StackMiddleware/StackedHttpKernel.php(51): Drupal\Core\StackMiddleware\NegotiationMiddleware->handle()
#48 /var/www/web/core/lib/Drupal/Core/DrupalKernel.php(704): Drupal\Core\StackMiddleware\StackedHttpKernel->handle()
#49 /var/www/web/index.php(19): Drupal\Core\DrupalKernel->handle()
#50 {main}
Comment #8
andileco commentedPlease apply the change I made in the issue branch to prevent the PHP error. I guess what I'm looking for is your completed chart when you were OK with using '' for the label field.
Comment #9
maxilein commentedHi,
as you can see the grouping of data follows the title. That's why in this example overwritten multiple bars get combined.
(That was not an issue in the original graph I tried)
Shouldn't the graphing follow the data rows - and then apply the title - and not vise versa like it is now?
R
Comment #10
maxilein commentedYou can see in the sample data that the labeling of the columns is also different...
It is not clear to me how to get the value into the label and when to get a title string.
Comment #11
andileco commentedSo the label field is reserved for the category (x-axis), and I think what you want is the series title. You can do that as you did either by grouping, or by using the Chart Attachment display option, then rewrite the label in each display. Can also be achieved with a hook.
Comment #12
andileco commentedClosing in favor of: https://www.drupal.org/project/charts/issues/3524784