- Deprecated function: Use of "static" in callables is deprecated in Drupal\user\Entity\Role::postLoad() (line 172 of core/modules/user/src/Entity/Role.php).
Drupal\user\Entity\Role::postLoad(Object, Array) (Line: 423)
Drupal\Core\Entity\EntityStorageBase->postLoad(Array) (Line: 353)
Drupal\Core\Entity\EntityStorageBase->loadMultiple(Array) (Line: 16)
Drupal\user\RoleStorage->isPermissionInRoles('access site in maintenance mode', Array) (Line: 112)
Drupal\Core\Session\UserSession->hasPermission('access site in maintenance mode') (Line: 105)
Drupal\Core\Session\AccountProxy->hasPermission('access site in maintenance mode') (Line: 83)
Drupal\redirect\RedirectChecker->canRedirect(Object) (Line: 120)
Drupal\redirect\EventSubscriber\RedirectRequestSubscriber->onKernelRequestCheckRedirect(Object, 'kernel.request', Object)
call_user_func(Array, Object, 'kernel.request', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.request') (Line: 145)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterMetaData is deprecated in Drupal\Core\Database\Query\Select->addMetaData() (line 178 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addMetaData('entity_type', 'file') (Line: 115)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 640)
Drupal\Core\Entity\EntityStorageBase->loadByProperties(Array) (Line: 63)
Drupal\Core\Entity\EntityRepository->loadEntityByUuid('file', 'ba4db18d-f6d2-4ab6-b668-7349a4e2225c') (Line: 95)
Drupal\editor\Plugin\Filter\EditorFileReference->process('La visualización <strong>Box and Whisker chart by MAQ Software</strong> ofrece innumerables opciones para visualizar la distribución de nuestros datos. Para comenzar, llevemos la visualización a nuestro lienzo y arrastremos a ella un campo categórico (el campo que contiene los nombres de las subcategorías en nuestro caso) y una medida (margen por categoría):
Vemos el típico diagrama de caja mostrando los cuartiles de la distribución. Los colores a usar en la caja pueden configurarse en <em>Formato > Box options</em> (véase siguiente imagen) y al mover el cursor encima de la caja o del eje vertical que la atraviesa se muestra una ventana flotante con información sobre al distribución:
Vemos que se muestra no solo los valores de los cuartiles, sino también información estadística como la media o el rango intercuantil.
Si echamos un vistazo a la configuración de la visualización...
...vemos que el campo <em>Subcategory</em> de nuestro modelo de datos se ha agregado al campo <em>Axis</em> de la visualización, y que la medida <em>Margin</em> ha ocupado el campo <em>Value</em>. Es decir, el campo <em>Axis</em> hace referencia al eje vertical en el que se muestran los valores que tome nuestro campo. Podemos comprobar esto moviendo el cursor por encima de los puntos verdes que representan nuestros valores (subcategorías en el ejemplo):
El campo <em>Axis Category I</em>, a su vez, hace referencia al eje X, que nos permite desglosar nuestro datos según otra dimensión. Si, por ejemplo, arrastramos a este campo <em>Axis Category I</em> el campo <em>Country</em> de nuestros datos (conteniendo los nombres de los países en los que se realizan las ventas), el resultado es el siguiente:
Ahora vemos la distribución del margen por subcategoría y por país. La visualización puede mostrarse también horizontalmente (<em>Formato > Orientation</em>):
En <em>Formato > Box options > Whisker type</em> podemos configurar cómo queremos que se calculen los "caps" de cada caja (los límites superior e inferior del eje que atraviesa cada caja): Por defecto se considera la opción "<em>Min/Max</em>", de forma que son los valores mínimo y máximo de nuestros valores los que establecen los valores de los caps, pero podemos escoger la opción <em>1.5 IQR</em>, por ejemplo, que limita los caps a 1.5 veces el rango intercuantil, o la opción <em>One Standard Deviation</em>, que limita los caps a una desviación estándar (considerando los puntos más alejados como "<em>outliers</em>"):
Estos outliers, una vez identificados (sea cual sea la opción escogida) pueden ocultarse en <em>Formato > Box Options > Outliers</em>:
Además de las opciones mencionadas ("<em>Min/Max</em>" , "<em>= 1.5 IRQ</em>" y "<em>One Standard Deviation</em>") hay otra opción de difícil interpretación ("<em>< 1.5 IRQ</em>") y otra <em>Custom</em> que permite especificar el mínimo y máximo percentil que limitarán la posición de los caps (fuera de los cuáles los valores se consideran <em>outliers</em>).
En las imágenes mostradas hasta ahora puede verse un círculo blanco en el interior de las cajas que representa el valor medio de los valores representados. Esto puede activarse o desactivarse en <em>Formato > Mean</em>.
Los ejes X e Y son configurables también (valores mínimo y máximo en el eje Y, número de cifras decimales a mostrar, color de la fuente, tamaño, etc., así como se puede mostrar o no el grid.
El campo de la visualización <em>Axis category II</em> permite replicar la gráfica desagregando los datos según una dimensión adicional (lo que frecuentemente se denomina <em>faces</em>). Así, si llevamos el campo <em>Gender</em> (que contiene el género de los clientes) a este campo, obtenemos el siguiente resultado:
En fin, montones de opciones disponibles para analizar la distribución de nuestros datos. Visualización muy recomendada.
', 'es') (Line: 118)
Drupal\filter\Element\ProcessedText::preRenderText(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 88)
__TwigTemplate_a7d6005c89ae729617b9a0c2bccb1776->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 46)
__TwigTemplate_804f7948456cfe20e11a34c43439c7c2->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 43)
__TwigTemplate_bd990293b89f3b78c69fe0ee2f7828b5->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/contrib/classy/templates/field/field--text-with-summary.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 74)
__TwigTemplate_94047fbdba6937b76a4479dfa1763452->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/custom/yg_aesthetic/templates/node.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterTags is deprecated in Drupal\Core\Database\Query\Select->addTag() (line 149 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addTag('entity_query') (Line: 147)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 640)
Drupal\Core\Entity\EntityStorageBase->loadByProperties(Array) (Line: 63)
Drupal\Core\Entity\EntityRepository->loadEntityByUuid('file', 'ba4db18d-f6d2-4ab6-b668-7349a4e2225c') (Line: 95)
Drupal\editor\Plugin\Filter\EditorFileReference->process('La visualización <strong>Box and Whisker chart by MAQ Software</strong> ofrece innumerables opciones para visualizar la distribución de nuestros datos. Para comenzar, llevemos la visualización a nuestro lienzo y arrastremos a ella un campo categórico (el campo que contiene los nombres de las subcategorías en nuestro caso) y una medida (margen por categoría):
Vemos el típico diagrama de caja mostrando los cuartiles de la distribución. Los colores a usar en la caja pueden configurarse en <em>Formato > Box options</em> (véase siguiente imagen) y al mover el cursor encima de la caja o del eje vertical que la atraviesa se muestra una ventana flotante con información sobre al distribución:
Vemos que se muestra no solo los valores de los cuartiles, sino también información estadística como la media o el rango intercuantil.
Si echamos un vistazo a la configuración de la visualización...
...vemos que el campo <em>Subcategory</em> de nuestro modelo de datos se ha agregado al campo <em>Axis</em> de la visualización, y que la medida <em>Margin</em> ha ocupado el campo <em>Value</em>. Es decir, el campo <em>Axis</em> hace referencia al eje vertical en el que se muestran los valores que tome nuestro campo. Podemos comprobar esto moviendo el cursor por encima de los puntos verdes que representan nuestros valores (subcategorías en el ejemplo):
El campo <em>Axis Category I</em>, a su vez, hace referencia al eje X, que nos permite desglosar nuestro datos según otra dimensión. Si, por ejemplo, arrastramos a este campo <em>Axis Category I</em> el campo <em>Country</em> de nuestros datos (conteniendo los nombres de los países en los que se realizan las ventas), el resultado es el siguiente:
Ahora vemos la distribución del margen por subcategoría y por país. La visualización puede mostrarse también horizontalmente (<em>Formato > Orientation</em>):
En <em>Formato > Box options > Whisker type</em> podemos configurar cómo queremos que se calculen los "caps" de cada caja (los límites superior e inferior del eje que atraviesa cada caja): Por defecto se considera la opción "<em>Min/Max</em>", de forma que son los valores mínimo y máximo de nuestros valores los que establecen los valores de los caps, pero podemos escoger la opción <em>1.5 IQR</em>, por ejemplo, que limita los caps a 1.5 veces el rango intercuantil, o la opción <em>One Standard Deviation</em>, que limita los caps a una desviación estándar (considerando los puntos más alejados como "<em>outliers</em>"):
Estos outliers, una vez identificados (sea cual sea la opción escogida) pueden ocultarse en <em>Formato > Box Options > Outliers</em>:
Además de las opciones mencionadas ("<em>Min/Max</em>" , "<em>= 1.5 IRQ</em>" y "<em>One Standard Deviation</em>") hay otra opción de difícil interpretación ("<em>< 1.5 IRQ</em>") y otra <em>Custom</em> que permite especificar el mínimo y máximo percentil que limitarán la posición de los caps (fuera de los cuáles los valores se consideran <em>outliers</em>).
En las imágenes mostradas hasta ahora puede verse un círculo blanco en el interior de las cajas que representa el valor medio de los valores representados. Esto puede activarse o desactivarse en <em>Formato > Mean</em>.
Los ejes X e Y son configurables también (valores mínimo y máximo en el eje Y, número de cifras decimales a mostrar, color de la fuente, tamaño, etc., así como se puede mostrar o no el grid.
El campo de la visualización <em>Axis category II</em> permite replicar la gráfica desagregando los datos según una dimensión adicional (lo que frecuentemente se denomina <em>faces</em>). Así, si llevamos el campo <em>Gender</em> (que contiene el género de los clientes) a este campo, obtenemos el siguiente resultado:
En fin, montones de opciones disponibles para analizar la distribución de nuestros datos. Visualización muy recomendada.
', 'es') (Line: 118)
Drupal\filter\Element\ProcessedText::preRenderText(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 88)
__TwigTemplate_a7d6005c89ae729617b9a0c2bccb1776->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 46)
__TwigTemplate_804f7948456cfe20e11a34c43439c7c2->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 43)
__TwigTemplate_bd990293b89f3b78c69fe0ee2f7828b5->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/contrib/classy/templates/field/field--text-with-summary.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 74)
__TwigTemplate_94047fbdba6937b76a4479dfa1763452->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/custom/yg_aesthetic/templates/node.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterMetaData is deprecated in Drupal\Core\Database\Query\Select->addMetaData() (line 178 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addMetaData('entity_type', 'file') (Line: 115)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 640)
Drupal\Core\Entity\EntityStorageBase->loadByProperties(Array) (Line: 63)
Drupal\Core\Entity\EntityRepository->loadEntityByUuid('file', 'ba4db18d-f6d2-4ab6-b668-7349a4e2225c') (Line: 124)
Drupal\editor\Plugin\Filter\EditorFileReference->process('La visualización <strong>Box and Whisker chart by MAQ Software</strong> ofrece innumerables opciones para visualizar la distribución de nuestros datos. Para comenzar, llevemos la visualización a nuestro lienzo y arrastremos a ella un campo categórico (el campo que contiene los nombres de las subcategorías en nuestro caso) y una medida (margen por categoría):
Vemos el típico diagrama de caja mostrando los cuartiles de la distribución. Los colores a usar en la caja pueden configurarse en <em>Formato > Box options</em> (véase siguiente imagen) y al mover el cursor encima de la caja o del eje vertical que la atraviesa se muestra una ventana flotante con información sobre al distribución:
Vemos que se muestra no solo los valores de los cuartiles, sino también información estadística como la media o el rango intercuantil.
Si echamos un vistazo a la configuración de la visualización...
...vemos que el campo <em>Subcategory</em> de nuestro modelo de datos se ha agregado al campo <em>Axis</em> de la visualización, y que la medida <em>Margin</em> ha ocupado el campo <em>Value</em>. Es decir, el campo <em>Axis</em> hace referencia al eje vertical en el que se muestran los valores que tome nuestro campo. Podemos comprobar esto moviendo el cursor por encima de los puntos verdes que representan nuestros valores (subcategorías en el ejemplo):
El campo <em>Axis Category I</em>, a su vez, hace referencia al eje X, que nos permite desglosar nuestro datos según otra dimensión. Si, por ejemplo, arrastramos a este campo <em>Axis Category I</em> el campo <em>Country</em> de nuestros datos (conteniendo los nombres de los países en los que se realizan las ventas), el resultado es el siguiente:
Ahora vemos la distribución del margen por subcategoría y por país. La visualización puede mostrarse también horizontalmente (<em>Formato > Orientation</em>):
En <em>Formato > Box options > Whisker type</em> podemos configurar cómo queremos que se calculen los "caps" de cada caja (los límites superior e inferior del eje que atraviesa cada caja): Por defecto se considera la opción "<em>Min/Max</em>", de forma que son los valores mínimo y máximo de nuestros valores los que establecen los valores de los caps, pero podemos escoger la opción <em>1.5 IQR</em>, por ejemplo, que limita los caps a 1.5 veces el rango intercuantil, o la opción <em>One Standard Deviation</em>, que limita los caps a una desviación estándar (considerando los puntos más alejados como "<em>outliers</em>"):
Estos outliers, una vez identificados (sea cual sea la opción escogida) pueden ocultarse en <em>Formato > Box Options > Outliers</em>:
Además de las opciones mencionadas ("<em>Min/Max</em>" , "<em>= 1.5 IRQ</em>" y "<em>One Standard Deviation</em>") hay otra opción de difícil interpretación ("<em>< 1.5 IRQ</em>") y otra <em>Custom</em> que permite especificar el mínimo y máximo percentil que limitarán la posición de los caps (fuera de los cuáles los valores se consideran <em>outliers</em>).
En las imágenes mostradas hasta ahora puede verse un círculo blanco en el interior de las cajas que representa el valor medio de los valores representados. Esto puede activarse o desactivarse en <em>Formato > Mean</em>.
Los ejes X e Y son configurables también (valores mínimo y máximo en el eje Y, número de cifras decimales a mostrar, color de la fuente, tamaño, etc., así como se puede mostrar o no el grid.
El campo de la visualización <em>Axis category II</em> permite replicar la gráfica desagregando los datos según una dimensión adicional (lo que frecuentemente se denomina <em>faces</em>). Así, si llevamos el campo <em>Gender</em> (que contiene el género de los clientes) a este campo, obtenemos el siguiente resultado:
En fin, montones de opciones disponibles para analizar la distribución de nuestros datos. Visualización muy recomendada.
', 'es') (Line: 118)
Drupal\filter\Element\ProcessedText::preRenderText(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 88)
__TwigTemplate_a7d6005c89ae729617b9a0c2bccb1776->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 46)
__TwigTemplate_804f7948456cfe20e11a34c43439c7c2->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 43)
__TwigTemplate_bd990293b89f3b78c69fe0ee2f7828b5->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/contrib/classy/templates/field/field--text-with-summary.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 74)
__TwigTemplate_94047fbdba6937b76a4479dfa1763452->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/custom/yg_aesthetic/templates/node.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterTags is deprecated in Drupal\Core\Database\Query\Select->addTag() (line 149 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addTag('entity_query') (Line: 147)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 640)
Drupal\Core\Entity\EntityStorageBase->loadByProperties(Array) (Line: 63)
Drupal\Core\Entity\EntityRepository->loadEntityByUuid('file', 'ba4db18d-f6d2-4ab6-b668-7349a4e2225c') (Line: 124)
Drupal\editor\Plugin\Filter\EditorFileReference->process('La visualización <strong>Box and Whisker chart by MAQ Software</strong> ofrece innumerables opciones para visualizar la distribución de nuestros datos. Para comenzar, llevemos la visualización a nuestro lienzo y arrastremos a ella un campo categórico (el campo que contiene los nombres de las subcategorías en nuestro caso) y una medida (margen por categoría):
Vemos el típico diagrama de caja mostrando los cuartiles de la distribución. Los colores a usar en la caja pueden configurarse en <em>Formato > Box options</em> (véase siguiente imagen) y al mover el cursor encima de la caja o del eje vertical que la atraviesa se muestra una ventana flotante con información sobre al distribución:
Vemos que se muestra no solo los valores de los cuartiles, sino también información estadística como la media o el rango intercuantil.
Si echamos un vistazo a la configuración de la visualización...
...vemos que el campo <em>Subcategory</em> de nuestro modelo de datos se ha agregado al campo <em>Axis</em> de la visualización, y que la medida <em>Margin</em> ha ocupado el campo <em>Value</em>. Es decir, el campo <em>Axis</em> hace referencia al eje vertical en el que se muestran los valores que tome nuestro campo. Podemos comprobar esto moviendo el cursor por encima de los puntos verdes que representan nuestros valores (subcategorías en el ejemplo):
El campo <em>Axis Category I</em>, a su vez, hace referencia al eje X, que nos permite desglosar nuestro datos según otra dimensión. Si, por ejemplo, arrastramos a este campo <em>Axis Category I</em> el campo <em>Country</em> de nuestros datos (conteniendo los nombres de los países en los que se realizan las ventas), el resultado es el siguiente:
Ahora vemos la distribución del margen por subcategoría y por país. La visualización puede mostrarse también horizontalmente (<em>Formato > Orientation</em>):
En <em>Formato > Box options > Whisker type</em> podemos configurar cómo queremos que se calculen los "caps" de cada caja (los límites superior e inferior del eje que atraviesa cada caja): Por defecto se considera la opción "<em>Min/Max</em>", de forma que son los valores mínimo y máximo de nuestros valores los que establecen los valores de los caps, pero podemos escoger la opción <em>1.5 IQR</em>, por ejemplo, que limita los caps a 1.5 veces el rango intercuantil, o la opción <em>One Standard Deviation</em>, que limita los caps a una desviación estándar (considerando los puntos más alejados como "<em>outliers</em>"):
Estos outliers, una vez identificados (sea cual sea la opción escogida) pueden ocultarse en <em>Formato > Box Options > Outliers</em>:
Además de las opciones mencionadas ("<em>Min/Max</em>" , "<em>= 1.5 IRQ</em>" y "<em>One Standard Deviation</em>") hay otra opción de difícil interpretación ("<em>< 1.5 IRQ</em>") y otra <em>Custom</em> que permite especificar el mínimo y máximo percentil que limitarán la posición de los caps (fuera de los cuáles los valores se consideran <em>outliers</em>).
En las imágenes mostradas hasta ahora puede verse un círculo blanco en el interior de las cajas que representa el valor medio de los valores representados. Esto puede activarse o desactivarse en <em>Formato > Mean</em>.
Los ejes X e Y son configurables también (valores mínimo y máximo en el eje Y, número de cifras decimales a mostrar, color de la fuente, tamaño, etc., así como se puede mostrar o no el grid.
El campo de la visualización <em>Axis category II</em> permite replicar la gráfica desagregando los datos según una dimensión adicional (lo que frecuentemente se denomina <em>faces</em>). Así, si llevamos el campo <em>Gender</em> (que contiene el género de los clientes) a este campo, obtenemos el siguiente resultado:
En fin, montones de opciones disponibles para analizar la distribución de nuestros datos. Visualización muy recomendada.
', 'es') (Line: 118)
Drupal\filter\Element\ProcessedText::preRenderText(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 88)
__TwigTemplate_a7d6005c89ae729617b9a0c2bccb1776->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 46)
__TwigTemplate_804f7948456cfe20e11a34c43439c7c2->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 43)
__TwigTemplate_bd990293b89f3b78c69fe0ee2f7828b5->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/contrib/classy/templates/field/field--text-with-summary.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 74)
__TwigTemplate_94047fbdba6937b76a4479dfa1763452->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/custom/yg_aesthetic/templates/node.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterMetaData is deprecated in Drupal\Core\Database\Query\Select->addMetaData() (line 178 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addMetaData('entity_type', 'file') (Line: 115)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 640)
Drupal\Core\Entity\EntityStorageBase->loadByProperties(Array) (Line: 63)
Drupal\Core\Entity\EntityRepository->loadEntityByUuid('file', 'c4f8c0e7-7fe7-47bb-89ba-1ad9ce5904aa') (Line: 95)
Drupal\editor\Plugin\Filter\EditorFileReference->process('La visualización <strong>Box and Whisker chart by MAQ Software</strong> ofrece innumerables opciones para visualizar la distribución de nuestros datos. Para comenzar, llevemos la visualización a nuestro lienzo y arrastremos a ella un campo categórico (el campo que contiene los nombres de las subcategorías en nuestro caso) y una medida (margen por categoría):
Vemos el típico diagrama de caja mostrando los cuartiles de la distribución. Los colores a usar en la caja pueden configurarse en <em>Formato > Box options</em> (véase siguiente imagen) y al mover el cursor encima de la caja o del eje vertical que la atraviesa se muestra una ventana flotante con información sobre al distribución:
Vemos que se muestra no solo los valores de los cuartiles, sino también información estadística como la media o el rango intercuantil.
Si echamos un vistazo a la configuración de la visualización...
...vemos que el campo <em>Subcategory</em> de nuestro modelo de datos se ha agregado al campo <em>Axis</em> de la visualización, y que la medida <em>Margin</em> ha ocupado el campo <em>Value</em>. Es decir, el campo <em>Axis</em> hace referencia al eje vertical en el que se muestran los valores que tome nuestro campo. Podemos comprobar esto moviendo el cursor por encima de los puntos verdes que representan nuestros valores (subcategorías en el ejemplo):
El campo <em>Axis Category I</em>, a su vez, hace referencia al eje X, que nos permite desglosar nuestro datos según otra dimensión. Si, por ejemplo, arrastramos a este campo <em>Axis Category I</em> el campo <em>Country</em> de nuestros datos (conteniendo los nombres de los países en los que se realizan las ventas), el resultado es el siguiente:
Ahora vemos la distribución del margen por subcategoría y por país. La visualización puede mostrarse también horizontalmente (<em>Formato > Orientation</em>):
En <em>Formato > Box options > Whisker type</em> podemos configurar cómo queremos que se calculen los "caps" de cada caja (los límites superior e inferior del eje que atraviesa cada caja): Por defecto se considera la opción "<em>Min/Max</em>", de forma que son los valores mínimo y máximo de nuestros valores los que establecen los valores de los caps, pero podemos escoger la opción <em>1.5 IQR</em>, por ejemplo, que limita los caps a 1.5 veces el rango intercuantil, o la opción <em>One Standard Deviation</em>, que limita los caps a una desviación estándar (considerando los puntos más alejados como "<em>outliers</em>"):
Estos outliers, una vez identificados (sea cual sea la opción escogida) pueden ocultarse en <em>Formato > Box Options > Outliers</em>:
Además de las opciones mencionadas ("<em>Min/Max</em>" , "<em>= 1.5 IRQ</em>" y "<em>One Standard Deviation</em>") hay otra opción de difícil interpretación ("<em>< 1.5 IRQ</em>") y otra <em>Custom</em> que permite especificar el mínimo y máximo percentil que limitarán la posición de los caps (fuera de los cuáles los valores se consideran <em>outliers</em>).
En las imágenes mostradas hasta ahora puede verse un círculo blanco en el interior de las cajas que representa el valor medio de los valores representados. Esto puede activarse o desactivarse en <em>Formato > Mean</em>.
Los ejes X e Y son configurables también (valores mínimo y máximo en el eje Y, número de cifras decimales a mostrar, color de la fuente, tamaño, etc., así como se puede mostrar o no el grid.
El campo de la visualización <em>Axis category II</em> permite replicar la gráfica desagregando los datos según una dimensión adicional (lo que frecuentemente se denomina <em>faces</em>). Así, si llevamos el campo <em>Gender</em> (que contiene el género de los clientes) a este campo, obtenemos el siguiente resultado:
En fin, montones de opciones disponibles para analizar la distribución de nuestros datos. Visualización muy recomendada.
', 'es') (Line: 118)
Drupal\filter\Element\ProcessedText::preRenderText(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 88)
__TwigTemplate_a7d6005c89ae729617b9a0c2bccb1776->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 46)
__TwigTemplate_804f7948456cfe20e11a34c43439c7c2->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 43)
__TwigTemplate_bd990293b89f3b78c69fe0ee2f7828b5->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/contrib/classy/templates/field/field--text-with-summary.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 74)
__TwigTemplate_94047fbdba6937b76a4479dfa1763452->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/custom/yg_aesthetic/templates/node.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterTags is deprecated in Drupal\Core\Database\Query\Select->addTag() (line 149 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addTag('entity_query') (Line: 147)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 640)
Drupal\Core\Entity\EntityStorageBase->loadByProperties(Array) (Line: 63)
Drupal\Core\Entity\EntityRepository->loadEntityByUuid('file', 'c4f8c0e7-7fe7-47bb-89ba-1ad9ce5904aa') (Line: 95)
Drupal\editor\Plugin\Filter\EditorFileReference->process('La visualización <strong>Box and Whisker chart by MAQ Software</strong> ofrece innumerables opciones para visualizar la distribución de nuestros datos. Para comenzar, llevemos la visualización a nuestro lienzo y arrastremos a ella un campo categórico (el campo que contiene los nombres de las subcategorías en nuestro caso) y una medida (margen por categoría):
Vemos el típico diagrama de caja mostrando los cuartiles de la distribución. Los colores a usar en la caja pueden configurarse en <em>Formato > Box options</em> (véase siguiente imagen) y al mover el cursor encima de la caja o del eje vertical que la atraviesa se muestra una ventana flotante con información sobre al distribución:
Vemos que se muestra no solo los valores de los cuartiles, sino también información estadística como la media o el rango intercuantil.
Si echamos un vistazo a la configuración de la visualización...
...vemos que el campo <em>Subcategory</em> de nuestro modelo de datos se ha agregado al campo <em>Axis</em> de la visualización, y que la medida <em>Margin</em> ha ocupado el campo <em>Value</em>. Es decir, el campo <em>Axis</em> hace referencia al eje vertical en el que se muestran los valores que tome nuestro campo. Podemos comprobar esto moviendo el cursor por encima de los puntos verdes que representan nuestros valores (subcategorías en el ejemplo):
El campo <em>Axis Category I</em>, a su vez, hace referencia al eje X, que nos permite desglosar nuestro datos según otra dimensión. Si, por ejemplo, arrastramos a este campo <em>Axis Category I</em> el campo <em>Country</em> de nuestros datos (conteniendo los nombres de los países en los que se realizan las ventas), el resultado es el siguiente:
Ahora vemos la distribución del margen por subcategoría y por país. La visualización puede mostrarse también horizontalmente (<em>Formato > Orientation</em>):
En <em>Formato > Box options > Whisker type</em> podemos configurar cómo queremos que se calculen los "caps" de cada caja (los límites superior e inferior del eje que atraviesa cada caja): Por defecto se considera la opción "<em>Min/Max</em>", de forma que son los valores mínimo y máximo de nuestros valores los que establecen los valores de los caps, pero podemos escoger la opción <em>1.5 IQR</em>, por ejemplo, que limita los caps a 1.5 veces el rango intercuantil, o la opción <em>One Standard Deviation</em>, que limita los caps a una desviación estándar (considerando los puntos más alejados como "<em>outliers</em>"):
Estos outliers, una vez identificados (sea cual sea la opción escogida) pueden ocultarse en <em>Formato > Box Options > Outliers</em>:
Además de las opciones mencionadas ("<em>Min/Max</em>" , "<em>= 1.5 IRQ</em>" y "<em>One Standard Deviation</em>") hay otra opción de difícil interpretación ("<em>< 1.5 IRQ</em>") y otra <em>Custom</em> que permite especificar el mínimo y máximo percentil que limitarán la posición de los caps (fuera de los cuáles los valores se consideran <em>outliers</em>).
En las imágenes mostradas hasta ahora puede verse un círculo blanco en el interior de las cajas que representa el valor medio de los valores representados. Esto puede activarse o desactivarse en <em>Formato > Mean</em>.
Los ejes X e Y son configurables también (valores mínimo y máximo en el eje Y, número de cifras decimales a mostrar, color de la fuente, tamaño, etc., así como se puede mostrar o no el grid.
El campo de la visualización <em>Axis category II</em> permite replicar la gráfica desagregando los datos según una dimensión adicional (lo que frecuentemente se denomina <em>faces</em>). Así, si llevamos el campo <em>Gender</em> (que contiene el género de los clientes) a este campo, obtenemos el siguiente resultado:
En fin, montones de opciones disponibles para analizar la distribución de nuestros datos. Visualización muy recomendada.
', 'es') (Line: 118)
Drupal\filter\Element\ProcessedText::preRenderText(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 88)
__TwigTemplate_a7d6005c89ae729617b9a0c2bccb1776->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 46)
__TwigTemplate_804f7948456cfe20e11a34c43439c7c2->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 43)
__TwigTemplate_bd990293b89f3b78c69fe0ee2f7828b5->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/contrib/classy/templates/field/field--text-with-summary.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 74)
__TwigTemplate_94047fbdba6937b76a4479dfa1763452->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/custom/yg_aesthetic/templates/node.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterMetaData is deprecated in Drupal\Core\Database\Query\Select->addMetaData() (line 178 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addMetaData('entity_type', 'file') (Line: 115)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 640)
Drupal\Core\Entity\EntityStorageBase->loadByProperties(Array) (Line: 63)
Drupal\Core\Entity\EntityRepository->loadEntityByUuid('file', 'c4f8c0e7-7fe7-47bb-89ba-1ad9ce5904aa') (Line: 124)
Drupal\editor\Plugin\Filter\EditorFileReference->process('La visualización <strong>Box and Whisker chart by MAQ Software</strong> ofrece innumerables opciones para visualizar la distribución de nuestros datos. Para comenzar, llevemos la visualización a nuestro lienzo y arrastremos a ella un campo categórico (el campo que contiene los nombres de las subcategorías en nuestro caso) y una medida (margen por categoría):
Vemos el típico diagrama de caja mostrando los cuartiles de la distribución. Los colores a usar en la caja pueden configurarse en <em>Formato > Box options</em> (véase siguiente imagen) y al mover el cursor encima de la caja o del eje vertical que la atraviesa se muestra una ventana flotante con información sobre al distribución:
Vemos que se muestra no solo los valores de los cuartiles, sino también información estadística como la media o el rango intercuantil.
Si echamos un vistazo a la configuración de la visualización...
...vemos que el campo <em>Subcategory</em> de nuestro modelo de datos se ha agregado al campo <em>Axis</em> de la visualización, y que la medida <em>Margin</em> ha ocupado el campo <em>Value</em>. Es decir, el campo <em>Axis</em> hace referencia al eje vertical en el que se muestran los valores que tome nuestro campo. Podemos comprobar esto moviendo el cursor por encima de los puntos verdes que representan nuestros valores (subcategorías en el ejemplo):
El campo <em>Axis Category I</em>, a su vez, hace referencia al eje X, que nos permite desglosar nuestro datos según otra dimensión. Si, por ejemplo, arrastramos a este campo <em>Axis Category I</em> el campo <em>Country</em> de nuestros datos (conteniendo los nombres de los países en los que se realizan las ventas), el resultado es el siguiente:
Ahora vemos la distribución del margen por subcategoría y por país. La visualización puede mostrarse también horizontalmente (<em>Formato > Orientation</em>):
En <em>Formato > Box options > Whisker type</em> podemos configurar cómo queremos que se calculen los "caps" de cada caja (los límites superior e inferior del eje que atraviesa cada caja): Por defecto se considera la opción "<em>Min/Max</em>", de forma que son los valores mínimo y máximo de nuestros valores los que establecen los valores de los caps, pero podemos escoger la opción <em>1.5 IQR</em>, por ejemplo, que limita los caps a 1.5 veces el rango intercuantil, o la opción <em>One Standard Deviation</em>, que limita los caps a una desviación estándar (considerando los puntos más alejados como "<em>outliers</em>"):
Estos outliers, una vez identificados (sea cual sea la opción escogida) pueden ocultarse en <em>Formato > Box Options > Outliers</em>:
Además de las opciones mencionadas ("<em>Min/Max</em>" , "<em>= 1.5 IRQ</em>" y "<em>One Standard Deviation</em>") hay otra opción de difícil interpretación ("<em>< 1.5 IRQ</em>") y otra <em>Custom</em> que permite especificar el mínimo y máximo percentil que limitarán la posición de los caps (fuera de los cuáles los valores se consideran <em>outliers</em>).
En las imágenes mostradas hasta ahora puede verse un círculo blanco en el interior de las cajas que representa el valor medio de los valores representados. Esto puede activarse o desactivarse en <em>Formato > Mean</em>.
Los ejes X e Y son configurables también (valores mínimo y máximo en el eje Y, número de cifras decimales a mostrar, color de la fuente, tamaño, etc., así como se puede mostrar o no el grid.
El campo de la visualización <em>Axis category II</em> permite replicar la gráfica desagregando los datos según una dimensión adicional (lo que frecuentemente se denomina <em>faces</em>). Así, si llevamos el campo <em>Gender</em> (que contiene el género de los clientes) a este campo, obtenemos el siguiente resultado:
En fin, montones de opciones disponibles para analizar la distribución de nuestros datos. Visualización muy recomendada.
', 'es') (Line: 118)
Drupal\filter\Element\ProcessedText::preRenderText(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 88)
__TwigTemplate_a7d6005c89ae729617b9a0c2bccb1776->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 46)
__TwigTemplate_804f7948456cfe20e11a34c43439c7c2->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 43)
__TwigTemplate_bd990293b89f3b78c69fe0ee2f7828b5->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/contrib/classy/templates/field/field--text-with-summary.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 74)
__TwigTemplate_94047fbdba6937b76a4479dfa1763452->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/custom/yg_aesthetic/templates/node.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterTags is deprecated in Drupal\Core\Database\Query\Select->addTag() (line 149 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addTag('entity_query') (Line: 147)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 640)
Drupal\Core\Entity\EntityStorageBase->loadByProperties(Array) (Line: 63)
Drupal\Core\Entity\EntityRepository->loadEntityByUuid('file', 'c4f8c0e7-7fe7-47bb-89ba-1ad9ce5904aa') (Line: 124)
Drupal\editor\Plugin\Filter\EditorFileReference->process('La visualización <strong>Box and Whisker chart by MAQ Software</strong> ofrece innumerables opciones para visualizar la distribución de nuestros datos. Para comenzar, llevemos la visualización a nuestro lienzo y arrastremos a ella un campo categórico (el campo que contiene los nombres de las subcategorías en nuestro caso) y una medida (margen por categoría):
Vemos el típico diagrama de caja mostrando los cuartiles de la distribución. Los colores a usar en la caja pueden configurarse en <em>Formato > Box options</em> (véase siguiente imagen) y al mover el cursor encima de la caja o del eje vertical que la atraviesa se muestra una ventana flotante con información sobre al distribución:
Vemos que se muestra no solo los valores de los cuartiles, sino también información estadística como la media o el rango intercuantil.
Si echamos un vistazo a la configuración de la visualización...
...vemos que el campo <em>Subcategory</em> de nuestro modelo de datos se ha agregado al campo <em>Axis</em> de la visualización, y que la medida <em>Margin</em> ha ocupado el campo <em>Value</em>. Es decir, el campo <em>Axis</em> hace referencia al eje vertical en el que se muestran los valores que tome nuestro campo. Podemos comprobar esto moviendo el cursor por encima de los puntos verdes que representan nuestros valores (subcategorías en el ejemplo):
El campo <em>Axis Category I</em>, a su vez, hace referencia al eje X, que nos permite desglosar nuestro datos según otra dimensión. Si, por ejemplo, arrastramos a este campo <em>Axis Category I</em> el campo <em>Country</em> de nuestros datos (conteniendo los nombres de los países en los que se realizan las ventas), el resultado es el siguiente:
Ahora vemos la distribución del margen por subcategoría y por país. La visualización puede mostrarse también horizontalmente (<em>Formato > Orientation</em>):
En <em>Formato > Box options > Whisker type</em> podemos configurar cómo queremos que se calculen los "caps" de cada caja (los límites superior e inferior del eje que atraviesa cada caja): Por defecto se considera la opción "<em>Min/Max</em>", de forma que son los valores mínimo y máximo de nuestros valores los que establecen los valores de los caps, pero podemos escoger la opción <em>1.5 IQR</em>, por ejemplo, que limita los caps a 1.5 veces el rango intercuantil, o la opción <em>One Standard Deviation</em>, que limita los caps a una desviación estándar (considerando los puntos más alejados como "<em>outliers</em>"):
Estos outliers, una vez identificados (sea cual sea la opción escogida) pueden ocultarse en <em>Formato > Box Options > Outliers</em>:
Además de las opciones mencionadas ("<em>Min/Max</em>" , "<em>= 1.5 IRQ</em>" y "<em>One Standard Deviation</em>") hay otra opción de difícil interpretación ("<em>< 1.5 IRQ</em>") y otra <em>Custom</em> que permite especificar el mínimo y máximo percentil que limitarán la posición de los caps (fuera de los cuáles los valores se consideran <em>outliers</em>).
En las imágenes mostradas hasta ahora puede verse un círculo blanco en el interior de las cajas que representa el valor medio de los valores representados. Esto puede activarse o desactivarse en <em>Formato > Mean</em>.
Los ejes X e Y son configurables también (valores mínimo y máximo en el eje Y, número de cifras decimales a mostrar, color de la fuente, tamaño, etc., así como se puede mostrar o no el grid.
El campo de la visualización <em>Axis category II</em> permite replicar la gráfica desagregando los datos según una dimensión adicional (lo que frecuentemente se denomina <em>faces</em>). Así, si llevamos el campo <em>Gender</em> (que contiene el género de los clientes) a este campo, obtenemos el siguiente resultado:
En fin, montones de opciones disponibles para analizar la distribución de nuestros datos. Visualización muy recomendada.
', 'es') (Line: 118)
Drupal\filter\Element\ProcessedText::preRenderText(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 88)
__TwigTemplate_a7d6005c89ae729617b9a0c2bccb1776->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 46)
__TwigTemplate_804f7948456cfe20e11a34c43439c7c2->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 43)
__TwigTemplate_bd990293b89f3b78c69fe0ee2f7828b5->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/contrib/classy/templates/field/field--text-with-summary.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 74)
__TwigTemplate_94047fbdba6937b76a4479dfa1763452->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/custom/yg_aesthetic/templates/node.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterMetaData is deprecated in Drupal\Core\Database\Query\Select->addMetaData() (line 178 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addMetaData('entity_type', 'file') (Line: 115)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 640)
Drupal\Core\Entity\EntityStorageBase->loadByProperties(Array) (Line: 63)
Drupal\Core\Entity\EntityRepository->loadEntityByUuid('file', 'a5db6b76-1069-4a9d-9ab8-c290169f678c') (Line: 95)
Drupal\editor\Plugin\Filter\EditorFileReference->process('La visualización <strong>Box and Whisker chart by MAQ Software</strong> ofrece innumerables opciones para visualizar la distribución de nuestros datos. Para comenzar, llevemos la visualización a nuestro lienzo y arrastremos a ella un campo categórico (el campo que contiene los nombres de las subcategorías en nuestro caso) y una medida (margen por categoría):
Vemos el típico diagrama de caja mostrando los cuartiles de la distribución. Los colores a usar en la caja pueden configurarse en <em>Formato > Box options</em> (véase siguiente imagen) y al mover el cursor encima de la caja o del eje vertical que la atraviesa se muestra una ventana flotante con información sobre al distribución:
Vemos que se muestra no solo los valores de los cuartiles, sino también información estadística como la media o el rango intercuantil.
Si echamos un vistazo a la configuración de la visualización...
...vemos que el campo <em>Subcategory</em> de nuestro modelo de datos se ha agregado al campo <em>Axis</em> de la visualización, y que la medida <em>Margin</em> ha ocupado el campo <em>Value</em>. Es decir, el campo <em>Axis</em> hace referencia al eje vertical en el que se muestran los valores que tome nuestro campo. Podemos comprobar esto moviendo el cursor por encima de los puntos verdes que representan nuestros valores (subcategorías en el ejemplo):
El campo <em>Axis Category I</em>, a su vez, hace referencia al eje X, que nos permite desglosar nuestro datos según otra dimensión. Si, por ejemplo, arrastramos a este campo <em>Axis Category I</em> el campo <em>Country</em> de nuestros datos (conteniendo los nombres de los países en los que se realizan las ventas), el resultado es el siguiente:
Ahora vemos la distribución del margen por subcategoría y por país. La visualización puede mostrarse también horizontalmente (<em>Formato > Orientation</em>):
En <em>Formato > Box options > Whisker type</em> podemos configurar cómo queremos que se calculen los "caps" de cada caja (los límites superior e inferior del eje que atraviesa cada caja): Por defecto se considera la opción "<em>Min/Max</em>", de forma que son los valores mínimo y máximo de nuestros valores los que establecen los valores de los caps, pero podemos escoger la opción <em>1.5 IQR</em>, por ejemplo, que limita los caps a 1.5 veces el rango intercuantil, o la opción <em>One Standard Deviation</em>, que limita los caps a una desviación estándar (considerando los puntos más alejados como "<em>outliers</em>"):
Estos outliers, una vez identificados (sea cual sea la opción escogida) pueden ocultarse en <em>Formato > Box Options > Outliers</em>:
Además de las opciones mencionadas ("<em>Min/Max</em>" , "<em>= 1.5 IRQ</em>" y "<em>One Standard Deviation</em>") hay otra opción de difícil interpretación ("<em>< 1.5 IRQ</em>") y otra <em>Custom</em> que permite especificar el mínimo y máximo percentil que limitarán la posición de los caps (fuera de los cuáles los valores se consideran <em>outliers</em>).
En las imágenes mostradas hasta ahora puede verse un círculo blanco en el interior de las cajas que representa el valor medio de los valores representados. Esto puede activarse o desactivarse en <em>Formato > Mean</em>.
Los ejes X e Y son configurables también (valores mínimo y máximo en el eje Y, número de cifras decimales a mostrar, color de la fuente, tamaño, etc., así como se puede mostrar o no el grid.
El campo de la visualización <em>Axis category II</em> permite replicar la gráfica desagregando los datos según una dimensión adicional (lo que frecuentemente se denomina <em>faces</em>). Así, si llevamos el campo <em>Gender</em> (que contiene el género de los clientes) a este campo, obtenemos el siguiente resultado:
En fin, montones de opciones disponibles para analizar la distribución de nuestros datos. Visualización muy recomendada.
', 'es') (Line: 118)
Drupal\filter\Element\ProcessedText::preRenderText(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 88)
__TwigTemplate_a7d6005c89ae729617b9a0c2bccb1776->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 46)
__TwigTemplate_804f7948456cfe20e11a34c43439c7c2->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 43)
__TwigTemplate_bd990293b89f3b78c69fe0ee2f7828b5->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/contrib/classy/templates/field/field--text-with-summary.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 74)
__TwigTemplate_94047fbdba6937b76a4479dfa1763452->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/custom/yg_aesthetic/templates/node.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterTags is deprecated in Drupal\Core\Database\Query\Select->addTag() (line 149 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addTag('entity_query') (Line: 147)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 640)
Drupal\Core\Entity\EntityStorageBase->loadByProperties(Array) (Line: 63)
Drupal\Core\Entity\EntityRepository->loadEntityByUuid('file', 'a5db6b76-1069-4a9d-9ab8-c290169f678c') (Line: 95)
Drupal\editor\Plugin\Filter\EditorFileReference->process('La visualización <strong>Box and Whisker chart by MAQ Software</strong> ofrece innumerables opciones para visualizar la distribución de nuestros datos. Para comenzar, llevemos la visualización a nuestro lienzo y arrastremos a ella un campo categórico (el campo que contiene los nombres de las subcategorías en nuestro caso) y una medida (margen por categoría):
Vemos el típico diagrama de caja mostrando los cuartiles de la distribución. Los colores a usar en la caja pueden configurarse en <em>Formato > Box options</em> (véase siguiente imagen) y al mover el cursor encima de la caja o del eje vertical que la atraviesa se muestra una ventana flotante con información sobre al distribución:
Vemos que se muestra no solo los valores de los cuartiles, sino también información estadística como la media o el rango intercuantil.
Si echamos un vistazo a la configuración de la visualización...
...vemos que el campo <em>Subcategory</em> de nuestro modelo de datos se ha agregado al campo <em>Axis</em> de la visualización, y que la medida <em>Margin</em> ha ocupado el campo <em>Value</em>. Es decir, el campo <em>Axis</em> hace referencia al eje vertical en el que se muestran los valores que tome nuestro campo. Podemos comprobar esto moviendo el cursor por encima de los puntos verdes que representan nuestros valores (subcategorías en el ejemplo):
El campo <em>Axis Category I</em>, a su vez, hace referencia al eje X, que nos permite desglosar nuestro datos según otra dimensión. Si, por ejemplo, arrastramos a este campo <em>Axis Category I</em> el campo <em>Country</em> de nuestros datos (conteniendo los nombres de los países en los que se realizan las ventas), el resultado es el siguiente:
Ahora vemos la distribución del margen por subcategoría y por país. La visualización puede mostrarse también horizontalmente (<em>Formato > Orientation</em>):
En <em>Formato > Box options > Whisker type</em> podemos configurar cómo queremos que se calculen los "caps" de cada caja (los límites superior e inferior del eje que atraviesa cada caja): Por defecto se considera la opción "<em>Min/Max</em>", de forma que son los valores mínimo y máximo de nuestros valores los que establecen los valores de los caps, pero podemos escoger la opción <em>1.5 IQR</em>, por ejemplo, que limita los caps a 1.5 veces el rango intercuantil, o la opción <em>One Standard Deviation</em>, que limita los caps a una desviación estándar (considerando los puntos más alejados como "<em>outliers</em>"):
Estos outliers, una vez identificados (sea cual sea la opción escogida) pueden ocultarse en <em>Formato > Box Options > Outliers</em>:
Además de las opciones mencionadas ("<em>Min/Max</em>" , "<em>= 1.5 IRQ</em>" y "<em>One Standard Deviation</em>") hay otra opción de difícil interpretación ("<em>< 1.5 IRQ</em>") y otra <em>Custom</em> que permite especificar el mínimo y máximo percentil que limitarán la posición de los caps (fuera de los cuáles los valores se consideran <em>outliers</em>).
En las imágenes mostradas hasta ahora puede verse un círculo blanco en el interior de las cajas que representa el valor medio de los valores representados. Esto puede activarse o desactivarse en <em>Formato > Mean</em>.
Los ejes X e Y son configurables también (valores mínimo y máximo en el eje Y, número de cifras decimales a mostrar, color de la fuente, tamaño, etc., así como se puede mostrar o no el grid.
El campo de la visualización <em>Axis category II</em> permite replicar la gráfica desagregando los datos según una dimensión adicional (lo que frecuentemente se denomina <em>faces</em>). Así, si llevamos el campo <em>Gender</em> (que contiene el género de los clientes) a este campo, obtenemos el siguiente resultado:
En fin, montones de opciones disponibles para analizar la distribución de nuestros datos. Visualización muy recomendada.
', 'es') (Line: 118)
Drupal\filter\Element\ProcessedText::preRenderText(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 88)
__TwigTemplate_a7d6005c89ae729617b9a0c2bccb1776->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 46)
__TwigTemplate_804f7948456cfe20e11a34c43439c7c2->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 43)
__TwigTemplate_bd990293b89f3b78c69fe0ee2f7828b5->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/contrib/classy/templates/field/field--text-with-summary.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 74)
__TwigTemplate_94047fbdba6937b76a4479dfa1763452->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/custom/yg_aesthetic/templates/node.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterMetaData is deprecated in Drupal\Core\Database\Query\Select->addMetaData() (line 178 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addMetaData('entity_type', 'file') (Line: 115)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 640)
Drupal\Core\Entity\EntityStorageBase->loadByProperties(Array) (Line: 63)
Drupal\Core\Entity\EntityRepository->loadEntityByUuid('file', 'a5db6b76-1069-4a9d-9ab8-c290169f678c') (Line: 124)
Drupal\editor\Plugin\Filter\EditorFileReference->process('La visualización <strong>Box and Whisker chart by MAQ Software</strong> ofrece innumerables opciones para visualizar la distribución de nuestros datos. Para comenzar, llevemos la visualización a nuestro lienzo y arrastremos a ella un campo categórico (el campo que contiene los nombres de las subcategorías en nuestro caso) y una medida (margen por categoría):
Vemos el típico diagrama de caja mostrando los cuartiles de la distribución. Los colores a usar en la caja pueden configurarse en <em>Formato > Box options</em> (véase siguiente imagen) y al mover el cursor encima de la caja o del eje vertical que la atraviesa se muestra una ventana flotante con información sobre al distribución:
Vemos que se muestra no solo los valores de los cuartiles, sino también información estadística como la media o el rango intercuantil.
Si echamos un vistazo a la configuración de la visualización...
...vemos que el campo <em>Subcategory</em> de nuestro modelo de datos se ha agregado al campo <em>Axis</em> de la visualización, y que la medida <em>Margin</em> ha ocupado el campo <em>Value</em>. Es decir, el campo <em>Axis</em> hace referencia al eje vertical en el que se muestran los valores que tome nuestro campo. Podemos comprobar esto moviendo el cursor por encima de los puntos verdes que representan nuestros valores (subcategorías en el ejemplo):
El campo <em>Axis Category I</em>, a su vez, hace referencia al eje X, que nos permite desglosar nuestro datos según otra dimensión. Si, por ejemplo, arrastramos a este campo <em>Axis Category I</em> el campo <em>Country</em> de nuestros datos (conteniendo los nombres de los países en los que se realizan las ventas), el resultado es el siguiente:
Ahora vemos la distribución del margen por subcategoría y por país. La visualización puede mostrarse también horizontalmente (<em>Formato > Orientation</em>):
En <em>Formato > Box options > Whisker type</em> podemos configurar cómo queremos que se calculen los "caps" de cada caja (los límites superior e inferior del eje que atraviesa cada caja): Por defecto se considera la opción "<em>Min/Max</em>", de forma que son los valores mínimo y máximo de nuestros valores los que establecen los valores de los caps, pero podemos escoger la opción <em>1.5 IQR</em>, por ejemplo, que limita los caps a 1.5 veces el rango intercuantil, o la opción <em>One Standard Deviation</em>, que limita los caps a una desviación estándar (considerando los puntos más alejados como "<em>outliers</em>"):
Estos outliers, una vez identificados (sea cual sea la opción escogida) pueden ocultarse en <em>Formato > Box Options > Outliers</em>:
Además de las opciones mencionadas ("<em>Min/Max</em>" , "<em>= 1.5 IRQ</em>" y "<em>One Standard Deviation</em>") hay otra opción de difícil interpretación ("<em>< 1.5 IRQ</em>") y otra <em>Custom</em> que permite especificar el mínimo y máximo percentil que limitarán la posición de los caps (fuera de los cuáles los valores se consideran <em>outliers</em>).
En las imágenes mostradas hasta ahora puede verse un círculo blanco en el interior de las cajas que representa el valor medio de los valores representados. Esto puede activarse o desactivarse en <em>Formato > Mean</em>.
Los ejes X e Y son configurables también (valores mínimo y máximo en el eje Y, número de cifras decimales a mostrar, color de la fuente, tamaño, etc., así como se puede mostrar o no el grid.
El campo de la visualización <em>Axis category II</em> permite replicar la gráfica desagregando los datos según una dimensión adicional (lo que frecuentemente se denomina <em>faces</em>). Así, si llevamos el campo <em>Gender</em> (que contiene el género de los clientes) a este campo, obtenemos el siguiente resultado:
En fin, montones de opciones disponibles para analizar la distribución de nuestros datos. Visualización muy recomendada.
', 'es') (Line: 118)
Drupal\filter\Element\ProcessedText::preRenderText(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 88)
__TwigTemplate_a7d6005c89ae729617b9a0c2bccb1776->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 46)
__TwigTemplate_804f7948456cfe20e11a34c43439c7c2->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 43)
__TwigTemplate_bd990293b89f3b78c69fe0ee2f7828b5->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/contrib/classy/templates/field/field--text-with-summary.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 74)
__TwigTemplate_94047fbdba6937b76a4479dfa1763452->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/custom/yg_aesthetic/templates/node.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterTags is deprecated in Drupal\Core\Database\Query\Select->addTag() (line 149 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addTag('entity_query') (Line: 147)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 640)
Drupal\Core\Entity\EntityStorageBase->loadByProperties(Array) (Line: 63)
Drupal\Core\Entity\EntityRepository->loadEntityByUuid('file', 'a5db6b76-1069-4a9d-9ab8-c290169f678c') (Line: 124)
Drupal\editor\Plugin\Filter\EditorFileReference->process('La visualización <strong>Box and Whisker chart by MAQ Software</strong> ofrece innumerables opciones para visualizar la distribución de nuestros datos. Para comenzar, llevemos la visualización a nuestro lienzo y arrastremos a ella un campo categórico (el campo que contiene los nombres de las subcategorías en nuestro caso) y una medida (margen por categoría):
Vemos el típico diagrama de caja mostrando los cuartiles de la distribución. Los colores a usar en la caja pueden configurarse en <em>Formato > Box options</em> (véase siguiente imagen) y al mover el cursor encima de la caja o del eje vertical que la atraviesa se muestra una ventana flotante con información sobre al distribución:
Vemos que se muestra no solo los valores de los cuartiles, sino también información estadística como la media o el rango intercuantil.
Si echamos un vistazo a la configuración de la visualización...
...vemos que el campo <em>Subcategory</em> de nuestro modelo de datos se ha agregado al campo <em>Axis</em> de la visualización, y que la medida <em>Margin</em> ha ocupado el campo <em>Value</em>. Es decir, el campo <em>Axis</em> hace referencia al eje vertical en el que se muestran los valores que tome nuestro campo. Podemos comprobar esto moviendo el cursor por encima de los puntos verdes que representan nuestros valores (subcategorías en el ejemplo):
El campo <em>Axis Category I</em>, a su vez, hace referencia al eje X, que nos permite desglosar nuestro datos según otra dimensión. Si, por ejemplo, arrastramos a este campo <em>Axis Category I</em> el campo <em>Country</em> de nuestros datos (conteniendo los nombres de los países en los que se realizan las ventas), el resultado es el siguiente:
Ahora vemos la distribución del margen por subcategoría y por país. La visualización puede mostrarse también horizontalmente (<em>Formato > Orientation</em>):
En <em>Formato > Box options > Whisker type</em> podemos configurar cómo queremos que se calculen los "caps" de cada caja (los límites superior e inferior del eje que atraviesa cada caja): Por defecto se considera la opción "<em>Min/Max</em>", de forma que son los valores mínimo y máximo de nuestros valores los que establecen los valores de los caps, pero podemos escoger la opción <em>1.5 IQR</em>, por ejemplo, que limita los caps a 1.5 veces el rango intercuantil, o la opción <em>One Standard Deviation</em>, que limita los caps a una desviación estándar (considerando los puntos más alejados como "<em>outliers</em>"):
Estos outliers, una vez identificados (sea cual sea la opción escogida) pueden ocultarse en <em>Formato > Box Options > Outliers</em>:
Además de las opciones mencionadas ("<em>Min/Max</em>" , "<em>= 1.5 IRQ</em>" y "<em>One Standard Deviation</em>") hay otra opción de difícil interpretación ("<em>< 1.5 IRQ</em>") y otra <em>Custom</em> que permite especificar el mínimo y máximo percentil que limitarán la posición de los caps (fuera de los cuáles los valores se consideran <em>outliers</em>).
En las imágenes mostradas hasta ahora puede verse un círculo blanco en el interior de las cajas que representa el valor medio de los valores representados. Esto puede activarse o desactivarse en <em>Formato > Mean</em>.
Los ejes X e Y son configurables también (valores mínimo y máximo en el eje Y, número de cifras decimales a mostrar, color de la fuente, tamaño, etc., así como se puede mostrar o no el grid.
El campo de la visualización <em>Axis category II</em> permite replicar la gráfica desagregando los datos según una dimensión adicional (lo que frecuentemente se denomina <em>faces</em>). Así, si llevamos el campo <em>Gender</em> (que contiene el género de los clientes) a este campo, obtenemos el siguiente resultado:
En fin, montones de opciones disponibles para analizar la distribución de nuestros datos. Visualización muy recomendada.
', 'es') (Line: 118)
Drupal\filter\Element\ProcessedText::preRenderText(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 88)
__TwigTemplate_a7d6005c89ae729617b9a0c2bccb1776->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 46)
__TwigTemplate_804f7948456cfe20e11a34c43439c7c2->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 43)
__TwigTemplate_bd990293b89f3b78c69fe0ee2f7828b5->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/contrib/classy/templates/field/field--text-with-summary.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 74)
__TwigTemplate_94047fbdba6937b76a4479dfa1763452->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/custom/yg_aesthetic/templates/node.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterMetaData is deprecated in Drupal\Core\Database\Query\Select->addMetaData() (line 178 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addMetaData('entity_type', 'file') (Line: 115)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 640)
Drupal\Core\Entity\EntityStorageBase->loadByProperties(Array) (Line: 63)
Drupal\Core\Entity\EntityRepository->loadEntityByUuid('file', '8feb145a-7083-477e-b624-fdb20e7caa25') (Line: 95)
Drupal\editor\Plugin\Filter\EditorFileReference->process('La visualización <strong>Box and Whisker chart by MAQ Software</strong> ofrece innumerables opciones para visualizar la distribución de nuestros datos. Para comenzar, llevemos la visualización a nuestro lienzo y arrastremos a ella un campo categórico (el campo que contiene los nombres de las subcategorías en nuestro caso) y una medida (margen por categoría):
Vemos el típico diagrama de caja mostrando los cuartiles de la distribución. Los colores a usar en la caja pueden configurarse en <em>Formato > Box options</em> (véase siguiente imagen) y al mover el cursor encima de la caja o del eje vertical que la atraviesa se muestra una ventana flotante con información sobre al distribución:
Vemos que se muestra no solo los valores de los cuartiles, sino también información estadística como la media o el rango intercuantil.
Si echamos un vistazo a la configuración de la visualización...
...vemos que el campo <em>Subcategory</em> de nuestro modelo de datos se ha agregado al campo <em>Axis</em> de la visualización, y que la medida <em>Margin</em> ha ocupado el campo <em>Value</em>. Es decir, el campo <em>Axis</em> hace referencia al eje vertical en el que se muestran los valores que tome nuestro campo. Podemos comprobar esto moviendo el cursor por encima de los puntos verdes que representan nuestros valores (subcategorías en el ejemplo):
El campo <em>Axis Category I</em>, a su vez, hace referencia al eje X, que nos permite desglosar nuestro datos según otra dimensión. Si, por ejemplo, arrastramos a este campo <em>Axis Category I</em> el campo <em>Country</em> de nuestros datos (conteniendo los nombres de los países en los que se realizan las ventas), el resultado es el siguiente:
Ahora vemos la distribución del margen por subcategoría y por país. La visualización puede mostrarse también horizontalmente (<em>Formato > Orientation</em>):
En <em>Formato > Box options > Whisker type</em> podemos configurar cómo queremos que se calculen los "caps" de cada caja (los límites superior e inferior del eje que atraviesa cada caja): Por defecto se considera la opción "<em>Min/Max</em>", de forma que son los valores mínimo y máximo de nuestros valores los que establecen los valores de los caps, pero podemos escoger la opción <em>1.5 IQR</em>, por ejemplo, que limita los caps a 1.5 veces el rango intercuantil, o la opción <em>One Standard Deviation</em>, que limita los caps a una desviación estándar (considerando los puntos más alejados como "<em>outliers</em>"):
Estos outliers, una vez identificados (sea cual sea la opción escogida) pueden ocultarse en <em>Formato > Box Options > Outliers</em>:
Además de las opciones mencionadas ("<em>Min/Max</em>" , "<em>= 1.5 IRQ</em>" y "<em>One Standard Deviation</em>") hay otra opción de difícil interpretación ("<em>< 1.5 IRQ</em>") y otra <em>Custom</em> que permite especificar el mínimo y máximo percentil que limitarán la posición de los caps (fuera de los cuáles los valores se consideran <em>outliers</em>).
En las imágenes mostradas hasta ahora puede verse un círculo blanco en el interior de las cajas que representa el valor medio de los valores representados. Esto puede activarse o desactivarse en <em>Formato > Mean</em>.
Los ejes X e Y son configurables también (valores mínimo y máximo en el eje Y, número de cifras decimales a mostrar, color de la fuente, tamaño, etc., así como se puede mostrar o no el grid.
El campo de la visualización <em>Axis category II</em> permite replicar la gráfica desagregando los datos según una dimensión adicional (lo que frecuentemente se denomina <em>faces</em>). Así, si llevamos el campo <em>Gender</em> (que contiene el género de los clientes) a este campo, obtenemos el siguiente resultado:
En fin, montones de opciones disponibles para analizar la distribución de nuestros datos. Visualización muy recomendada.
', 'es') (Line: 118)
Drupal\filter\Element\ProcessedText::preRenderText(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 88)
__TwigTemplate_a7d6005c89ae729617b9a0c2bccb1776->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 46)
__TwigTemplate_804f7948456cfe20e11a34c43439c7c2->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 43)
__TwigTemplate_bd990293b89f3b78c69fe0ee2f7828b5->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/contrib/classy/templates/field/field--text-with-summary.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 74)
__TwigTemplate_94047fbdba6937b76a4479dfa1763452->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/custom/yg_aesthetic/templates/node.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterTags is deprecated in Drupal\Core\Database\Query\Select->addTag() (line 149 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addTag('entity_query') (Line: 147)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 640)
Drupal\Core\Entity\EntityStorageBase->loadByProperties(Array) (Line: 63)
Drupal\Core\Entity\EntityRepository->loadEntityByUuid('file', '8feb145a-7083-477e-b624-fdb20e7caa25') (Line: 95)
Drupal\editor\Plugin\Filter\EditorFileReference->process('La visualización <strong>Box and Whisker chart by MAQ Software</strong> ofrece innumerables opciones para visualizar la distribución de nuestros datos. Para comenzar, llevemos la visualización a nuestro lienzo y arrastremos a ella un campo categórico (el campo que contiene los nombres de las subcategorías en nuestro caso) y una medida (margen por categoría):
Vemos el típico diagrama de caja mostrando los cuartiles de la distribución. Los colores a usar en la caja pueden configurarse en <em>Formato > Box options</em> (véase siguiente imagen) y al mover el cursor encima de la caja o del eje vertical que la atraviesa se muestra una ventana flotante con información sobre al distribución:
Vemos que se muestra no solo los valores de los cuartiles, sino también información estadística como la media o el rango intercuantil.
Si echamos un vistazo a la configuración de la visualización...
...vemos que el campo <em>Subcategory</em> de nuestro modelo de datos se ha agregado al campo <em>Axis</em> de la visualización, y que la medida <em>Margin</em> ha ocupado el campo <em>Value</em>. Es decir, el campo <em>Axis</em> hace referencia al eje vertical en el que se muestran los valores que tome nuestro campo. Podemos comprobar esto moviendo el cursor por encima de los puntos verdes que representan nuestros valores (subcategorías en el ejemplo):
El campo <em>Axis Category I</em>, a su vez, hace referencia al eje X, que nos permite desglosar nuestro datos según otra dimensión. Si, por ejemplo, arrastramos a este campo <em>Axis Category I</em> el campo <em>Country</em> de nuestros datos (conteniendo los nombres de los países en los que se realizan las ventas), el resultado es el siguiente:
Ahora vemos la distribución del margen por subcategoría y por país. La visualización puede mostrarse también horizontalmente (<em>Formato > Orientation</em>):
En <em>Formato > Box options > Whisker type</em> podemos configurar cómo queremos que se calculen los "caps" de cada caja (los límites superior e inferior del eje que atraviesa cada caja): Por defecto se considera la opción "<em>Min/Max</em>", de forma que son los valores mínimo y máximo de nuestros valores los que establecen los valores de los caps, pero podemos escoger la opción <em>1.5 IQR</em>, por ejemplo, que limita los caps a 1.5 veces el rango intercuantil, o la opción <em>One Standard Deviation</em>, que limita los caps a una desviación estándar (considerando los puntos más alejados como "<em>outliers</em>"):
Estos outliers, una vez identificados (sea cual sea la opción escogida) pueden ocultarse en <em>Formato > Box Options > Outliers</em>:
Además de las opciones mencionadas ("<em>Min/Max</em>" , "<em>= 1.5 IRQ</em>" y "<em>One Standard Deviation</em>") hay otra opción de difícil interpretación ("<em>< 1.5 IRQ</em>") y otra <em>Custom</em> que permite especificar el mínimo y máximo percentil que limitarán la posición de los caps (fuera de los cuáles los valores se consideran <em>outliers</em>).
En las imágenes mostradas hasta ahora puede verse un círculo blanco en el interior de las cajas que representa el valor medio de los valores representados. Esto puede activarse o desactivarse en <em>Formato > Mean</em>.
Los ejes X e Y son configurables también (valores mínimo y máximo en el eje Y, número de cifras decimales a mostrar, color de la fuente, tamaño, etc., así como se puede mostrar o no el grid.
El campo de la visualización <em>Axis category II</em> permite replicar la gráfica desagregando los datos según una dimensión adicional (lo que frecuentemente se denomina <em>faces</em>). Así, si llevamos el campo <em>Gender</em> (que contiene el género de los clientes) a este campo, obtenemos el siguiente resultado:
En fin, montones de opciones disponibles para analizar la distribución de nuestros datos. Visualización muy recomendada.
', 'es') (Line: 118)
Drupal\filter\Element\ProcessedText::preRenderText(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 88)
__TwigTemplate_a7d6005c89ae729617b9a0c2bccb1776->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 46)
__TwigTemplate_804f7948456cfe20e11a34c43439c7c2->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 43)
__TwigTemplate_bd990293b89f3b78c69fe0ee2f7828b5->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/contrib/classy/templates/field/field--text-with-summary.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 74)
__TwigTemplate_94047fbdba6937b76a4479dfa1763452->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/custom/yg_aesthetic/templates/node.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterMetaData is deprecated in Drupal\Core\Database\Query\Select->addMetaData() (line 178 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addMetaData('entity_type', 'file') (Line: 115)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 640)
Drupal\Core\Entity\EntityStorageBase->loadByProperties(Array) (Line: 63)
Drupal\Core\Entity\EntityRepository->loadEntityByUuid('file', '8feb145a-7083-477e-b624-fdb20e7caa25') (Line: 124)
Drupal\editor\Plugin\Filter\EditorFileReference->process('La visualización <strong>Box and Whisker chart by MAQ Software</strong> ofrece innumerables opciones para visualizar la distribución de nuestros datos. Para comenzar, llevemos la visualización a nuestro lienzo y arrastremos a ella un campo categórico (el campo que contiene los nombres de las subcategorías en nuestro caso) y una medida (margen por categoría):
Vemos el típico diagrama de caja mostrando los cuartiles de la distribución. Los colores a usar en la caja pueden configurarse en <em>Formato > Box options</em> (véase siguiente imagen) y al mover el cursor encima de la caja o del eje vertical que la atraviesa se muestra una ventana flotante con información sobre al distribución:
Vemos que se muestra no solo los valores de los cuartiles, sino también información estadística como la media o el rango intercuantil.
Si echamos un vistazo a la configuración de la visualización...
...vemos que el campo <em>Subcategory</em> de nuestro modelo de datos se ha agregado al campo <em>Axis</em> de la visualización, y que la medida <em>Margin</em> ha ocupado el campo <em>Value</em>. Es decir, el campo <em>Axis</em> hace referencia al eje vertical en el que se muestran los valores que tome nuestro campo. Podemos comprobar esto moviendo el cursor por encima de los puntos verdes que representan nuestros valores (subcategorías en el ejemplo):
El campo <em>Axis Category I</em>, a su vez, hace referencia al eje X, que nos permite desglosar nuestro datos según otra dimensión. Si, por ejemplo, arrastramos a este campo <em>Axis Category I</em> el campo <em>Country</em> de nuestros datos (conteniendo los nombres de los países en los que se realizan las ventas), el resultado es el siguiente:
Ahora vemos la distribución del margen por subcategoría y por país. La visualización puede mostrarse también horizontalmente (<em>Formato > Orientation</em>):
En <em>Formato > Box options > Whisker type</em> podemos configurar cómo queremos que se calculen los "caps" de cada caja (los límites superior e inferior del eje que atraviesa cada caja): Por defecto se considera la opción "<em>Min/Max</em>", de forma que son los valores mínimo y máximo de nuestros valores los que establecen los valores de los caps, pero podemos escoger la opción <em>1.5 IQR</em>, por ejemplo, que limita los caps a 1.5 veces el rango intercuantil, o la opción <em>One Standard Deviation</em>, que limita los caps a una desviación estándar (considerando los puntos más alejados como "<em>outliers</em>"):
Estos outliers, una vez identificados (sea cual sea la opción escogida) pueden ocultarse en <em>Formato > Box Options > Outliers</em>:
Además de las opciones mencionadas ("<em>Min/Max</em>" , "<em>= 1.5 IRQ</em>" y "<em>One Standard Deviation</em>") hay otra opción de difícil interpretación ("<em>< 1.5 IRQ</em>") y otra <em>Custom</em> que permite especificar el mínimo y máximo percentil que limitarán la posición de los caps (fuera de los cuáles los valores se consideran <em>outliers</em>).
En las imágenes mostradas hasta ahora puede verse un círculo blanco en el interior de las cajas que representa el valor medio de los valores representados. Esto puede activarse o desactivarse en <em>Formato > Mean</em>.
Los ejes X e Y son configurables también (valores mínimo y máximo en el eje Y, número de cifras decimales a mostrar, color de la fuente, tamaño, etc., así como se puede mostrar o no el grid.
El campo de la visualización <em>Axis category II</em> permite replicar la gráfica desagregando los datos según una dimensión adicional (lo que frecuentemente se denomina <em>faces</em>). Así, si llevamos el campo <em>Gender</em> (que contiene el género de los clientes) a este campo, obtenemos el siguiente resultado:
En fin, montones de opciones disponibles para analizar la distribución de nuestros datos. Visualización muy recomendada.
', 'es') (Line: 118)
Drupal\filter\Element\ProcessedText::preRenderText(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 88)
__TwigTemplate_a7d6005c89ae729617b9a0c2bccb1776->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 46)
__TwigTemplate_804f7948456cfe20e11a34c43439c7c2->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 43)
__TwigTemplate_bd990293b89f3b78c69fe0ee2f7828b5->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/contrib/classy/templates/field/field--text-with-summary.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 74)
__TwigTemplate_94047fbdba6937b76a4479dfa1763452->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/custom/yg_aesthetic/templates/node.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterTags is deprecated in Drupal\Core\Database\Query\Select->addTag() (line 149 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addTag('entity_query') (Line: 147)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 640)
Drupal\Core\Entity\EntityStorageBase->loadByProperties(Array) (Line: 63)
Drupal\Core\Entity\EntityRepository->loadEntityByUuid('file', '8feb145a-7083-477e-b624-fdb20e7caa25') (Line: 124)
Drupal\editor\Plugin\Filter\EditorFileReference->process('La visualización <strong>Box and Whisker chart by MAQ Software</strong> ofrece innumerables opciones para visualizar la distribución de nuestros datos. Para comenzar, llevemos la visualización a nuestro lienzo y arrastremos a ella un campo categórico (el campo que contiene los nombres de las subcategorías en nuestro caso) y una medida (margen por categoría):
Vemos el típico diagrama de caja mostrando los cuartiles de la distribución. Los colores a usar en la caja pueden configurarse en <em>Formato > Box options</em> (véase siguiente imagen) y al mover el cursor encima de la caja o del eje vertical que la atraviesa se muestra una ventana flotante con información sobre al distribución:
Vemos que se muestra no solo los valores de los cuartiles, sino también información estadística como la media o el rango intercuantil.
Si echamos un vistazo a la configuración de la visualización...
...vemos que el campo <em>Subcategory</em> de nuestro modelo de datos se ha agregado al campo <em>Axis</em> de la visualización, y que la medida <em>Margin</em> ha ocupado el campo <em>Value</em>. Es decir, el campo <em>Axis</em> hace referencia al eje vertical en el que se muestran los valores que tome nuestro campo. Podemos comprobar esto moviendo el cursor por encima de los puntos verdes que representan nuestros valores (subcategorías en el ejemplo):
El campo <em>Axis Category I</em>, a su vez, hace referencia al eje X, que nos permite desglosar nuestro datos según otra dimensión. Si, por ejemplo, arrastramos a este campo <em>Axis Category I</em> el campo <em>Country</em> de nuestros datos (conteniendo los nombres de los países en los que se realizan las ventas), el resultado es el siguiente:
Ahora vemos la distribución del margen por subcategoría y por país. La visualización puede mostrarse también horizontalmente (<em>Formato > Orientation</em>):
En <em>Formato > Box options > Whisker type</em> podemos configurar cómo queremos que se calculen los "caps" de cada caja (los límites superior e inferior del eje que atraviesa cada caja): Por defecto se considera la opción "<em>Min/Max</em>", de forma que son los valores mínimo y máximo de nuestros valores los que establecen los valores de los caps, pero podemos escoger la opción <em>1.5 IQR</em>, por ejemplo, que limita los caps a 1.5 veces el rango intercuantil, o la opción <em>One Standard Deviation</em>, que limita los caps a una desviación estándar (considerando los puntos más alejados como "<em>outliers</em>"):
Estos outliers, una vez identificados (sea cual sea la opción escogida) pueden ocultarse en <em>Formato > Box Options > Outliers</em>:
Además de las opciones mencionadas ("<em>Min/Max</em>" , "<em>= 1.5 IRQ</em>" y "<em>One Standard Deviation</em>") hay otra opción de difícil interpretación ("<em>< 1.5 IRQ</em>") y otra <em>Custom</em> que permite especificar el mínimo y máximo percentil que limitarán la posición de los caps (fuera de los cuáles los valores se consideran <em>outliers</em>).
En las imágenes mostradas hasta ahora puede verse un círculo blanco en el interior de las cajas que representa el valor medio de los valores representados. Esto puede activarse o desactivarse en <em>Formato > Mean</em>.
Los ejes X e Y son configurables también (valores mínimo y máximo en el eje Y, número de cifras decimales a mostrar, color de la fuente, tamaño, etc., así como se puede mostrar o no el grid.
El campo de la visualización <em>Axis category II</em> permite replicar la gráfica desagregando los datos según una dimensión adicional (lo que frecuentemente se denomina <em>faces</em>). Así, si llevamos el campo <em>Gender</em> (que contiene el género de los clientes) a este campo, obtenemos el siguiente resultado:
En fin, montones de opciones disponibles para analizar la distribución de nuestros datos. Visualización muy recomendada.
', 'es') (Line: 118)
Drupal\filter\Element\ProcessedText::preRenderText(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 88)
__TwigTemplate_a7d6005c89ae729617b9a0c2bccb1776->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 46)
__TwigTemplate_804f7948456cfe20e11a34c43439c7c2->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 43)
__TwigTemplate_bd990293b89f3b78c69fe0ee2f7828b5->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/contrib/classy/templates/field/field--text-with-summary.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 74)
__TwigTemplate_94047fbdba6937b76a4479dfa1763452->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/custom/yg_aesthetic/templates/node.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterMetaData is deprecated in Drupal\Core\Database\Query\Select->addMetaData() (line 178 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addMetaData('entity_type', 'file') (Line: 115)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 640)
Drupal\Core\Entity\EntityStorageBase->loadByProperties(Array) (Line: 63)
Drupal\Core\Entity\EntityRepository->loadEntityByUuid('file', 'c61cea56-16c8-4682-8624-66e50c28c026') (Line: 95)
Drupal\editor\Plugin\Filter\EditorFileReference->process('La visualización <strong>Box and Whisker chart by MAQ Software</strong> ofrece innumerables opciones para visualizar la distribución de nuestros datos. Para comenzar, llevemos la visualización a nuestro lienzo y arrastremos a ella un campo categórico (el campo que contiene los nombres de las subcategorías en nuestro caso) y una medida (margen por categoría):
Vemos el típico diagrama de caja mostrando los cuartiles de la distribución. Los colores a usar en la caja pueden configurarse en <em>Formato > Box options</em> (véase siguiente imagen) y al mover el cursor encima de la caja o del eje vertical que la atraviesa se muestra una ventana flotante con información sobre al distribución:
Vemos que se muestra no solo los valores de los cuartiles, sino también información estadística como la media o el rango intercuantil.
Si echamos un vistazo a la configuración de la visualización...
...vemos que el campo <em>Subcategory</em> de nuestro modelo de datos se ha agregado al campo <em>Axis</em> de la visualización, y que la medida <em>Margin</em> ha ocupado el campo <em>Value</em>. Es decir, el campo <em>Axis</em> hace referencia al eje vertical en el que se muestran los valores que tome nuestro campo. Podemos comprobar esto moviendo el cursor por encima de los puntos verdes que representan nuestros valores (subcategorías en el ejemplo):
El campo <em>Axis Category I</em>, a su vez, hace referencia al eje X, que nos permite desglosar nuestro datos según otra dimensión. Si, por ejemplo, arrastramos a este campo <em>Axis Category I</em> el campo <em>Country</em> de nuestros datos (conteniendo los nombres de los países en los que se realizan las ventas), el resultado es el siguiente:
Ahora vemos la distribución del margen por subcategoría y por país. La visualización puede mostrarse también horizontalmente (<em>Formato > Orientation</em>):
En <em>Formato > Box options > Whisker type</em> podemos configurar cómo queremos que se calculen los "caps" de cada caja (los límites superior e inferior del eje que atraviesa cada caja): Por defecto se considera la opción "<em>Min/Max</em>", de forma que son los valores mínimo y máximo de nuestros valores los que establecen los valores de los caps, pero podemos escoger la opción <em>1.5 IQR</em>, por ejemplo, que limita los caps a 1.5 veces el rango intercuantil, o la opción <em>One Standard Deviation</em>, que limita los caps a una desviación estándar (considerando los puntos más alejados como "<em>outliers</em>"):
Estos outliers, una vez identificados (sea cual sea la opción escogida) pueden ocultarse en <em>Formato > Box Options > Outliers</em>:
Además de las opciones mencionadas ("<em>Min/Max</em>" , "<em>= 1.5 IRQ</em>" y "<em>One Standard Deviation</em>") hay otra opción de difícil interpretación ("<em>< 1.5 IRQ</em>") y otra <em>Custom</em> que permite especificar el mínimo y máximo percentil que limitarán la posición de los caps (fuera de los cuáles los valores se consideran <em>outliers</em>).
En las imágenes mostradas hasta ahora puede verse un círculo blanco en el interior de las cajas que representa el valor medio de los valores representados. Esto puede activarse o desactivarse en <em>Formato > Mean</em>.
Los ejes X e Y son configurables también (valores mínimo y máximo en el eje Y, número de cifras decimales a mostrar, color de la fuente, tamaño, etc., así como se puede mostrar o no el grid.
El campo de la visualización <em>Axis category II</em> permite replicar la gráfica desagregando los datos según una dimensión adicional (lo que frecuentemente se denomina <em>faces</em>). Así, si llevamos el campo <em>Gender</em> (que contiene el género de los clientes) a este campo, obtenemos el siguiente resultado:
En fin, montones de opciones disponibles para analizar la distribución de nuestros datos. Visualización muy recomendada.
', 'es') (Line: 118)
Drupal\filter\Element\ProcessedText::preRenderText(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 88)
__TwigTemplate_a7d6005c89ae729617b9a0c2bccb1776->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 46)
__TwigTemplate_804f7948456cfe20e11a34c43439c7c2->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 43)
__TwigTemplate_bd990293b89f3b78c69fe0ee2f7828b5->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/contrib/classy/templates/field/field--text-with-summary.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 74)
__TwigTemplate_94047fbdba6937b76a4479dfa1763452->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/custom/yg_aesthetic/templates/node.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterTags is deprecated in Drupal\Core\Database\Query\Select->addTag() (line 149 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addTag('entity_query') (Line: 147)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 640)
Drupal\Core\Entity\EntityStorageBase->loadByProperties(Array) (Line: 63)
Drupal\Core\Entity\EntityRepository->loadEntityByUuid('file', 'c61cea56-16c8-4682-8624-66e50c28c026') (Line: 95)
Drupal\editor\Plugin\Filter\EditorFileReference->process('La visualización <strong>Box and Whisker chart by MAQ Software</strong> ofrece innumerables opciones para visualizar la distribución de nuestros datos. Para comenzar, llevemos la visualización a nuestro lienzo y arrastremos a ella un campo categórico (el campo que contiene los nombres de las subcategorías en nuestro caso) y una medida (margen por categoría):
Vemos el típico diagrama de caja mostrando los cuartiles de la distribución. Los colores a usar en la caja pueden configurarse en <em>Formato > Box options</em> (véase siguiente imagen) y al mover el cursor encima de la caja o del eje vertical que la atraviesa se muestra una ventana flotante con información sobre al distribución:
Vemos que se muestra no solo los valores de los cuartiles, sino también información estadística como la media o el rango intercuantil.
Si echamos un vistazo a la configuración de la visualización...
...vemos que el campo <em>Subcategory</em> de nuestro modelo de datos se ha agregado al campo <em>Axis</em> de la visualización, y que la medida <em>Margin</em> ha ocupado el campo <em>Value</em>. Es decir, el campo <em>Axis</em> hace referencia al eje vertical en el que se muestran los valores que tome nuestro campo. Podemos comprobar esto moviendo el cursor por encima de los puntos verdes que representan nuestros valores (subcategorías en el ejemplo):
El campo <em>Axis Category I</em>, a su vez, hace referencia al eje X, que nos permite desglosar nuestro datos según otra dimensión. Si, por ejemplo, arrastramos a este campo <em>Axis Category I</em> el campo <em>Country</em> de nuestros datos (conteniendo los nombres de los países en los que se realizan las ventas), el resultado es el siguiente:
Ahora vemos la distribución del margen por subcategoría y por país. La visualización puede mostrarse también horizontalmente (<em>Formato > Orientation</em>):
En <em>Formato > Box options > Whisker type</em> podemos configurar cómo queremos que se calculen los "caps" de cada caja (los límites superior e inferior del eje que atraviesa cada caja): Por defecto se considera la opción "<em>Min/Max</em>", de forma que son los valores mínimo y máximo de nuestros valores los que establecen los valores de los caps, pero podemos escoger la opción <em>1.5 IQR</em>, por ejemplo, que limita los caps a 1.5 veces el rango intercuantil, o la opción <em>One Standard Deviation</em>, que limita los caps a una desviación estándar (considerando los puntos más alejados como "<em>outliers</em>"):
Estos outliers, una vez identificados (sea cual sea la opción escogida) pueden ocultarse en <em>Formato > Box Options > Outliers</em>:
Además de las opciones mencionadas ("<em>Min/Max</em>" , "<em>= 1.5 IRQ</em>" y "<em>One Standard Deviation</em>") hay otra opción de difícil interpretación ("<em>< 1.5 IRQ</em>") y otra <em>Custom</em> que permite especificar el mínimo y máximo percentil que limitarán la posición de los caps (fuera de los cuáles los valores se consideran <em>outliers</em>).
En las imágenes mostradas hasta ahora puede verse un círculo blanco en el interior de las cajas que representa el valor medio de los valores representados. Esto puede activarse o desactivarse en <em>Formato > Mean</em>.
Los ejes X e Y son configurables también (valores mínimo y máximo en el eje Y, número de cifras decimales a mostrar, color de la fuente, tamaño, etc., así como se puede mostrar o no el grid.
El campo de la visualización <em>Axis category II</em> permite replicar la gráfica desagregando los datos según una dimensión adicional (lo que frecuentemente se denomina <em>faces</em>). Así, si llevamos el campo <em>Gender</em> (que contiene el género de los clientes) a este campo, obtenemos el siguiente resultado:
En fin, montones de opciones disponibles para analizar la distribución de nuestros datos. Visualización muy recomendada.
', 'es') (Line: 118)
Drupal\filter\Element\ProcessedText::preRenderText(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 88)
__TwigTemplate_a7d6005c89ae729617b9a0c2bccb1776->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 46)
__TwigTemplate_804f7948456cfe20e11a34c43439c7c2->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 43)
__TwigTemplate_bd990293b89f3b78c69fe0ee2f7828b5->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/contrib/classy/templates/field/field--text-with-summary.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 74)
__TwigTemplate_94047fbdba6937b76a4479dfa1763452->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/custom/yg_aesthetic/templates/node.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterMetaData is deprecated in Drupal\Core\Database\Query\Select->addMetaData() (line 178 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addMetaData('entity_type', 'file') (Line: 115)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 640)
Drupal\Core\Entity\EntityStorageBase->loadByProperties(Array) (Line: 63)
Drupal\Core\Entity\EntityRepository->loadEntityByUuid('file', 'c61cea56-16c8-4682-8624-66e50c28c026') (Line: 124)
Drupal\editor\Plugin\Filter\EditorFileReference->process('La visualización <strong>Box and Whisker chart by MAQ Software</strong> ofrece innumerables opciones para visualizar la distribución de nuestros datos. Para comenzar, llevemos la visualización a nuestro lienzo y arrastremos a ella un campo categórico (el campo que contiene los nombres de las subcategorías en nuestro caso) y una medida (margen por categoría):
Vemos el típico diagrama de caja mostrando los cuartiles de la distribución. Los colores a usar en la caja pueden configurarse en <em>Formato > Box options</em> (véase siguiente imagen) y al mover el cursor encima de la caja o del eje vertical que la atraviesa se muestra una ventana flotante con información sobre al distribución:
Vemos que se muestra no solo los valores de los cuartiles, sino también información estadística como la media o el rango intercuantil.
Si echamos un vistazo a la configuración de la visualización...
...vemos que el campo <em>Subcategory</em> de nuestro modelo de datos se ha agregado al campo <em>Axis</em> de la visualización, y que la medida <em>Margin</em> ha ocupado el campo <em>Value</em>. Es decir, el campo <em>Axis</em> hace referencia al eje vertical en el que se muestran los valores que tome nuestro campo. Podemos comprobar esto moviendo el cursor por encima de los puntos verdes que representan nuestros valores (subcategorías en el ejemplo):
El campo <em>Axis Category I</em>, a su vez, hace referencia al eje X, que nos permite desglosar nuestro datos según otra dimensión. Si, por ejemplo, arrastramos a este campo <em>Axis Category I</em> el campo <em>Country</em> de nuestros datos (conteniendo los nombres de los países en los que se realizan las ventas), el resultado es el siguiente:
Ahora vemos la distribución del margen por subcategoría y por país. La visualización puede mostrarse también horizontalmente (<em>Formato > Orientation</em>):
En <em>Formato > Box options > Whisker type</em> podemos configurar cómo queremos que se calculen los "caps" de cada caja (los límites superior e inferior del eje que atraviesa cada caja): Por defecto se considera la opción "<em>Min/Max</em>", de forma que son los valores mínimo y máximo de nuestros valores los que establecen los valores de los caps, pero podemos escoger la opción <em>1.5 IQR</em>, por ejemplo, que limita los caps a 1.5 veces el rango intercuantil, o la opción <em>One Standard Deviation</em>, que limita los caps a una desviación estándar (considerando los puntos más alejados como "<em>outliers</em>"):
Estos outliers, una vez identificados (sea cual sea la opción escogida) pueden ocultarse en <em>Formato > Box Options > Outliers</em>:
Además de las opciones mencionadas ("<em>Min/Max</em>" , "<em>= 1.5 IRQ</em>" y "<em>One Standard Deviation</em>") hay otra opción de difícil interpretación ("<em>< 1.5 IRQ</em>") y otra <em>Custom</em> que permite especificar el mínimo y máximo percentil que limitarán la posición de los caps (fuera de los cuáles los valores se consideran <em>outliers</em>).
En las imágenes mostradas hasta ahora puede verse un círculo blanco en el interior de las cajas que representa el valor medio de los valores representados. Esto puede activarse o desactivarse en <em>Formato > Mean</em>.
Los ejes X e Y son configurables también (valores mínimo y máximo en el eje Y, número de cifras decimales a mostrar, color de la fuente, tamaño, etc., así como se puede mostrar o no el grid.
El campo de la visualización <em>Axis category II</em> permite replicar la gráfica desagregando los datos según una dimensión adicional (lo que frecuentemente se denomina <em>faces</em>). Así, si llevamos el campo <em>Gender</em> (que contiene el género de los clientes) a este campo, obtenemos el siguiente resultado:
En fin, montones de opciones disponibles para analizar la distribución de nuestros datos. Visualización muy recomendada.
', 'es') (Line: 118)
Drupal\filter\Element\ProcessedText::preRenderText(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 88)
__TwigTemplate_a7d6005c89ae729617b9a0c2bccb1776->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 46)
__TwigTemplate_804f7948456cfe20e11a34c43439c7c2->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 43)
__TwigTemplate_bd990293b89f3b78c69fe0ee2f7828b5->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/contrib/classy/templates/field/field--text-with-summary.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 74)
__TwigTemplate_94047fbdba6937b76a4479dfa1763452->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/custom/yg_aesthetic/templates/node.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterTags is deprecated in Drupal\Core\Database\Query\Select->addTag() (line 149 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addTag('entity_query') (Line: 147)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 640)
Drupal\Core\Entity\EntityStorageBase->loadByProperties(Array) (Line: 63)
Drupal\Core\Entity\EntityRepository->loadEntityByUuid('file', 'c61cea56-16c8-4682-8624-66e50c28c026') (Line: 124)
Drupal\editor\Plugin\Filter\EditorFileReference->process('La visualización <strong>Box and Whisker chart by MAQ Software</strong> ofrece innumerables opciones para visualizar la distribución de nuestros datos. Para comenzar, llevemos la visualización a nuestro lienzo y arrastremos a ella un campo categórico (el campo que contiene los nombres de las subcategorías en nuestro caso) y una medida (margen por categoría):
Vemos el típico diagrama de caja mostrando los cuartiles de la distribución. Los colores a usar en la caja pueden configurarse en <em>Formato > Box options</em> (véase siguiente imagen) y al mover el cursor encima de la caja o del eje vertical que la atraviesa se muestra una ventana flotante con información sobre al distribución:
Vemos que se muestra no solo los valores de los cuartiles, sino también información estadística como la media o el rango intercuantil.
Si echamos un vistazo a la configuración de la visualización...
...vemos que el campo <em>Subcategory</em> de nuestro modelo de datos se ha agregado al campo <em>Axis</em> de la visualización, y que la medida <em>Margin</em> ha ocupado el campo <em>Value</em>. Es decir, el campo <em>Axis</em> hace referencia al eje vertical en el que se muestran los valores que tome nuestro campo. Podemos comprobar esto moviendo el cursor por encima de los puntos verdes que representan nuestros valores (subcategorías en el ejemplo):
El campo <em>Axis Category I</em>, a su vez, hace referencia al eje X, que nos permite desglosar nuestro datos según otra dimensión. Si, por ejemplo, arrastramos a este campo <em>Axis Category I</em> el campo <em>Country</em> de nuestros datos (conteniendo los nombres de los países en los que se realizan las ventas), el resultado es el siguiente:
Ahora vemos la distribución del margen por subcategoría y por país. La visualización puede mostrarse también horizontalmente (<em>Formato > Orientation</em>):
En <em>Formato > Box options > Whisker type</em> podemos configurar cómo queremos que se calculen los "caps" de cada caja (los límites superior e inferior del eje que atraviesa cada caja): Por defecto se considera la opción "<em>Min/Max</em>", de forma que son los valores mínimo y máximo de nuestros valores los que establecen los valores de los caps, pero podemos escoger la opción <em>1.5 IQR</em>, por ejemplo, que limita los caps a 1.5 veces el rango intercuantil, o la opción <em>One Standard Deviation</em>, que limita los caps a una desviación estándar (considerando los puntos más alejados como "<em>outliers</em>"):
Estos outliers, una vez identificados (sea cual sea la opción escogida) pueden ocultarse en <em>Formato > Box Options > Outliers</em>:
Además de las opciones mencionadas ("<em>Min/Max</em>" , "<em>= 1.5 IRQ</em>" y "<em>One Standard Deviation</em>") hay otra opción de difícil interpretación ("<em>< 1.5 IRQ</em>") y otra <em>Custom</em> que permite especificar el mínimo y máximo percentil que limitarán la posición de los caps (fuera de los cuáles los valores se consideran <em>outliers</em>).
En las imágenes mostradas hasta ahora puede verse un círculo blanco en el interior de las cajas que representa el valor medio de los valores representados. Esto puede activarse o desactivarse en <em>Formato > Mean</em>.
Los ejes X e Y son configurables también (valores mínimo y máximo en el eje Y, número de cifras decimales a mostrar, color de la fuente, tamaño, etc., así como se puede mostrar o no el grid.
El campo de la visualización <em>Axis category II</em> permite replicar la gráfica desagregando los datos según una dimensión adicional (lo que frecuentemente se denomina <em>faces</em>). Así, si llevamos el campo <em>Gender</em> (que contiene el género de los clientes) a este campo, obtenemos el siguiente resultado:
En fin, montones de opciones disponibles para analizar la distribución de nuestros datos. Visualización muy recomendada.
', 'es') (Line: 118)
Drupal\filter\Element\ProcessedText::preRenderText(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 88)
__TwigTemplate_a7d6005c89ae729617b9a0c2bccb1776->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 46)
__TwigTemplate_804f7948456cfe20e11a34c43439c7c2->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 43)
__TwigTemplate_bd990293b89f3b78c69fe0ee2f7828b5->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/contrib/classy/templates/field/field--text-with-summary.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 74)
__TwigTemplate_94047fbdba6937b76a4479dfa1763452->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/custom/yg_aesthetic/templates/node.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterMetaData is deprecated in Drupal\Core\Database\Query\Select->addMetaData() (line 178 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addMetaData('entity_type', 'file') (Line: 115)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 640)
Drupal\Core\Entity\EntityStorageBase->loadByProperties(Array) (Line: 63)
Drupal\Core\Entity\EntityRepository->loadEntityByUuid('file', '9661e99f-bb16-4683-a230-2c76b2bb4fb4') (Line: 95)
Drupal\editor\Plugin\Filter\EditorFileReference->process('La visualización <strong>Box and Whisker chart by MAQ Software</strong> ofrece innumerables opciones para visualizar la distribución de nuestros datos. Para comenzar, llevemos la visualización a nuestro lienzo y arrastremos a ella un campo categórico (el campo que contiene los nombres de las subcategorías en nuestro caso) y una medida (margen por categoría):
Vemos el típico diagrama de caja mostrando los cuartiles de la distribución. Los colores a usar en la caja pueden configurarse en <em>Formato > Box options</em> (véase siguiente imagen) y al mover el cursor encima de la caja o del eje vertical que la atraviesa se muestra una ventana flotante con información sobre al distribución:
Vemos que se muestra no solo los valores de los cuartiles, sino también información estadística como la media o el rango intercuantil.
Si echamos un vistazo a la configuración de la visualización...
...vemos que el campo <em>Subcategory</em> de nuestro modelo de datos se ha agregado al campo <em>Axis</em> de la visualización, y que la medida <em>Margin</em> ha ocupado el campo <em>Value</em>. Es decir, el campo <em>Axis</em> hace referencia al eje vertical en el que se muestran los valores que tome nuestro campo. Podemos comprobar esto moviendo el cursor por encima de los puntos verdes que representan nuestros valores (subcategorías en el ejemplo):
El campo <em>Axis Category I</em>, a su vez, hace referencia al eje X, que nos permite desglosar nuestro datos según otra dimensión. Si, por ejemplo, arrastramos a este campo <em>Axis Category I</em> el campo <em>Country</em> de nuestros datos (conteniendo los nombres de los países en los que se realizan las ventas), el resultado es el siguiente:
Ahora vemos la distribución del margen por subcategoría y por país. La visualización puede mostrarse también horizontalmente (<em>Formato > Orientation</em>):
En <em>Formato > Box options > Whisker type</em> podemos configurar cómo queremos que se calculen los "caps" de cada caja (los límites superior e inferior del eje que atraviesa cada caja): Por defecto se considera la opción "<em>Min/Max</em>", de forma que son los valores mínimo y máximo de nuestros valores los que establecen los valores de los caps, pero podemos escoger la opción <em>1.5 IQR</em>, por ejemplo, que limita los caps a 1.5 veces el rango intercuantil, o la opción <em>One Standard Deviation</em>, que limita los caps a una desviación estándar (considerando los puntos más alejados como "<em>outliers</em>"):
Estos outliers, una vez identificados (sea cual sea la opción escogida) pueden ocultarse en <em>Formato > Box Options > Outliers</em>:
Además de las opciones mencionadas ("<em>Min/Max</em>" , "<em>= 1.5 IRQ</em>" y "<em>One Standard Deviation</em>") hay otra opción de difícil interpretación ("<em>< 1.5 IRQ</em>") y otra <em>Custom</em> que permite especificar el mínimo y máximo percentil que limitarán la posición de los caps (fuera de los cuáles los valores se consideran <em>outliers</em>).
En las imágenes mostradas hasta ahora puede verse un círculo blanco en el interior de las cajas que representa el valor medio de los valores representados. Esto puede activarse o desactivarse en <em>Formato > Mean</em>.
Los ejes X e Y son configurables también (valores mínimo y máximo en el eje Y, número de cifras decimales a mostrar, color de la fuente, tamaño, etc., así como se puede mostrar o no el grid.
El campo de la visualización <em>Axis category II</em> permite replicar la gráfica desagregando los datos según una dimensión adicional (lo que frecuentemente se denomina <em>faces</em>). Así, si llevamos el campo <em>Gender</em> (que contiene el género de los clientes) a este campo, obtenemos el siguiente resultado:
En fin, montones de opciones disponibles para analizar la distribución de nuestros datos. Visualización muy recomendada.
', 'es') (Line: 118)
Drupal\filter\Element\ProcessedText::preRenderText(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 88)
__TwigTemplate_a7d6005c89ae729617b9a0c2bccb1776->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 46)
__TwigTemplate_804f7948456cfe20e11a34c43439c7c2->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 43)
__TwigTemplate_bd990293b89f3b78c69fe0ee2f7828b5->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/contrib/classy/templates/field/field--text-with-summary.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 74)
__TwigTemplate_94047fbdba6937b76a4479dfa1763452->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/custom/yg_aesthetic/templates/node.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterTags is deprecated in Drupal\Core\Database\Query\Select->addTag() (line 149 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addTag('entity_query') (Line: 147)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 640)
Drupal\Core\Entity\EntityStorageBase->loadByProperties(Array) (Line: 63)
Drupal\Core\Entity\EntityRepository->loadEntityByUuid('file', '9661e99f-bb16-4683-a230-2c76b2bb4fb4') (Line: 95)
Drupal\editor\Plugin\Filter\EditorFileReference->process('La visualización <strong>Box and Whisker chart by MAQ Software</strong> ofrece innumerables opciones para visualizar la distribución de nuestros datos. Para comenzar, llevemos la visualización a nuestro lienzo y arrastremos a ella un campo categórico (el campo que contiene los nombres de las subcategorías en nuestro caso) y una medida (margen por categoría):
Vemos el típico diagrama de caja mostrando los cuartiles de la distribución. Los colores a usar en la caja pueden configurarse en <em>Formato > Box options</em> (véase siguiente imagen) y al mover el cursor encima de la caja o del eje vertical que la atraviesa se muestra una ventana flotante con información sobre al distribución:
Vemos que se muestra no solo los valores de los cuartiles, sino también información estadística como la media o el rango intercuantil.
Si echamos un vistazo a la configuración de la visualización...
...vemos que el campo <em>Subcategory</em> de nuestro modelo de datos se ha agregado al campo <em>Axis</em> de la visualización, y que la medida <em>Margin</em> ha ocupado el campo <em>Value</em>. Es decir, el campo <em>Axis</em> hace referencia al eje vertical en el que se muestran los valores que tome nuestro campo. Podemos comprobar esto moviendo el cursor por encima de los puntos verdes que representan nuestros valores (subcategorías en el ejemplo):
El campo <em>Axis Category I</em>, a su vez, hace referencia al eje X, que nos permite desglosar nuestro datos según otra dimensión. Si, por ejemplo, arrastramos a este campo <em>Axis Category I</em> el campo <em>Country</em> de nuestros datos (conteniendo los nombres de los países en los que se realizan las ventas), el resultado es el siguiente:
Ahora vemos la distribución del margen por subcategoría y por país. La visualización puede mostrarse también horizontalmente (<em>Formato > Orientation</em>):
En <em>Formato > Box options > Whisker type</em> podemos configurar cómo queremos que se calculen los "caps" de cada caja (los límites superior e inferior del eje que atraviesa cada caja): Por defecto se considera la opción "<em>Min/Max</em>", de forma que son los valores mínimo y máximo de nuestros valores los que establecen los valores de los caps, pero podemos escoger la opción <em>1.5 IQR</em>, por ejemplo, que limita los caps a 1.5 veces el rango intercuantil, o la opción <em>One Standard Deviation</em>, que limita los caps a una desviación estándar (considerando los puntos más alejados como "<em>outliers</em>"):
Estos outliers, una vez identificados (sea cual sea la opción escogida) pueden ocultarse en <em>Formato > Box Options > Outliers</em>:
Además de las opciones mencionadas ("<em>Min/Max</em>" , "<em>= 1.5 IRQ</em>" y "<em>One Standard Deviation</em>") hay otra opción de difícil interpretación ("<em>< 1.5 IRQ</em>") y otra <em>Custom</em> que permite especificar el mínimo y máximo percentil que limitarán la posición de los caps (fuera de los cuáles los valores se consideran <em>outliers</em>).
En las imágenes mostradas hasta ahora puede verse un círculo blanco en el interior de las cajas que representa el valor medio de los valores representados. Esto puede activarse o desactivarse en <em>Formato > Mean</em>.
Los ejes X e Y son configurables también (valores mínimo y máximo en el eje Y, número de cifras decimales a mostrar, color de la fuente, tamaño, etc., así como se puede mostrar o no el grid.
El campo de la visualización <em>Axis category II</em> permite replicar la gráfica desagregando los datos según una dimensión adicional (lo que frecuentemente se denomina <em>faces</em>). Así, si llevamos el campo <em>Gender</em> (que contiene el género de los clientes) a este campo, obtenemos el siguiente resultado:
En fin, montones de opciones disponibles para analizar la distribución de nuestros datos. Visualización muy recomendada.
', 'es') (Line: 118)
Drupal\filter\Element\ProcessedText::preRenderText(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 88)
__TwigTemplate_a7d6005c89ae729617b9a0c2bccb1776->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 46)
__TwigTemplate_804f7948456cfe20e11a34c43439c7c2->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 43)
__TwigTemplate_bd990293b89f3b78c69fe0ee2f7828b5->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/contrib/classy/templates/field/field--text-with-summary.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 74)
__TwigTemplate_94047fbdba6937b76a4479dfa1763452->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/custom/yg_aesthetic/templates/node.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterMetaData is deprecated in Drupal\Core\Database\Query\Select->addMetaData() (line 178 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addMetaData('entity_type', 'file') (Line: 115)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 640)
Drupal\Core\Entity\EntityStorageBase->loadByProperties(Array) (Line: 63)
Drupal\Core\Entity\EntityRepository->loadEntityByUuid('file', '9661e99f-bb16-4683-a230-2c76b2bb4fb4') (Line: 124)
Drupal\editor\Plugin\Filter\EditorFileReference->process('La visualización <strong>Box and Whisker chart by MAQ Software</strong> ofrece innumerables opciones para visualizar la distribución de nuestros datos. Para comenzar, llevemos la visualización a nuestro lienzo y arrastremos a ella un campo categórico (el campo que contiene los nombres de las subcategorías en nuestro caso) y una medida (margen por categoría):
Vemos el típico diagrama de caja mostrando los cuartiles de la distribución. Los colores a usar en la caja pueden configurarse en <em>Formato > Box options</em> (véase siguiente imagen) y al mover el cursor encima de la caja o del eje vertical que la atraviesa se muestra una ventana flotante con información sobre al distribución:
Vemos que se muestra no solo los valores de los cuartiles, sino también información estadística como la media o el rango intercuantil.
Si echamos un vistazo a la configuración de la visualización...
...vemos que el campo <em>Subcategory</em> de nuestro modelo de datos se ha agregado al campo <em>Axis</em> de la visualización, y que la medida <em>Margin</em> ha ocupado el campo <em>Value</em>. Es decir, el campo <em>Axis</em> hace referencia al eje vertical en el que se muestran los valores que tome nuestro campo. Podemos comprobar esto moviendo el cursor por encima de los puntos verdes que representan nuestros valores (subcategorías en el ejemplo):
El campo <em>Axis Category I</em>, a su vez, hace referencia al eje X, que nos permite desglosar nuestro datos según otra dimensión. Si, por ejemplo, arrastramos a este campo <em>Axis Category I</em> el campo <em>Country</em> de nuestros datos (conteniendo los nombres de los países en los que se realizan las ventas), el resultado es el siguiente:
Ahora vemos la distribución del margen por subcategoría y por país. La visualización puede mostrarse también horizontalmente (<em>Formato > Orientation</em>):
En <em>Formato > Box options > Whisker type</em> podemos configurar cómo queremos que se calculen los "caps" de cada caja (los límites superior e inferior del eje que atraviesa cada caja): Por defecto se considera la opción "<em>Min/Max</em>", de forma que son los valores mínimo y máximo de nuestros valores los que establecen los valores de los caps, pero podemos escoger la opción <em>1.5 IQR</em>, por ejemplo, que limita los caps a 1.5 veces el rango intercuantil, o la opción <em>One Standard Deviation</em>, que limita los caps a una desviación estándar (considerando los puntos más alejados como "<em>outliers</em>"):
Estos outliers, una vez identificados (sea cual sea la opción escogida) pueden ocultarse en <em>Formato > Box Options > Outliers</em>:
Además de las opciones mencionadas ("<em>Min/Max</em>" , "<em>= 1.5 IRQ</em>" y "<em>One Standard Deviation</em>") hay otra opción de difícil interpretación ("<em>< 1.5 IRQ</em>") y otra <em>Custom</em> que permite especificar el mínimo y máximo percentil que limitarán la posición de los caps (fuera de los cuáles los valores se consideran <em>outliers</em>).
En las imágenes mostradas hasta ahora puede verse un círculo blanco en el interior de las cajas que representa el valor medio de los valores representados. Esto puede activarse o desactivarse en <em>Formato > Mean</em>.
Los ejes X e Y son configurables también (valores mínimo y máximo en el eje Y, número de cifras decimales a mostrar, color de la fuente, tamaño, etc., así como se puede mostrar o no el grid.
El campo de la visualización <em>Axis category II</em> permite replicar la gráfica desagregando los datos según una dimensión adicional (lo que frecuentemente se denomina <em>faces</em>). Así, si llevamos el campo <em>Gender</em> (que contiene el género de los clientes) a este campo, obtenemos el siguiente resultado:
En fin, montones de opciones disponibles para analizar la distribución de nuestros datos. Visualización muy recomendada.
', 'es') (Line: 118)
Drupal\filter\Element\ProcessedText::preRenderText(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 88)
__TwigTemplate_a7d6005c89ae729617b9a0c2bccb1776->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 46)
__TwigTemplate_804f7948456cfe20e11a34c43439c7c2->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 43)
__TwigTemplate_bd990293b89f3b78c69fe0ee2f7828b5->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/contrib/classy/templates/field/field--text-with-summary.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 74)
__TwigTemplate_94047fbdba6937b76a4479dfa1763452->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/custom/yg_aesthetic/templates/node.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterTags is deprecated in Drupal\Core\Database\Query\Select->addTag() (line 149 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addTag('entity_query') (Line: 147)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 640)
Drupal\Core\Entity\EntityStorageBase->loadByProperties(Array) (Line: 63)
Drupal\Core\Entity\EntityRepository->loadEntityByUuid('file', '9661e99f-bb16-4683-a230-2c76b2bb4fb4') (Line: 124)
Drupal\editor\Plugin\Filter\EditorFileReference->process('La visualización <strong>Box and Whisker chart by MAQ Software</strong> ofrece innumerables opciones para visualizar la distribución de nuestros datos. Para comenzar, llevemos la visualización a nuestro lienzo y arrastremos a ella un campo categórico (el campo que contiene los nombres de las subcategorías en nuestro caso) y una medida (margen por categoría):
Vemos el típico diagrama de caja mostrando los cuartiles de la distribución. Los colores a usar en la caja pueden configurarse en <em>Formato > Box options</em> (véase siguiente imagen) y al mover el cursor encima de la caja o del eje vertical que la atraviesa se muestra una ventana flotante con información sobre al distribución:
Vemos que se muestra no solo los valores de los cuartiles, sino también información estadística como la media o el rango intercuantil.
Si echamos un vistazo a la configuración de la visualización...
...vemos que el campo <em>Subcategory</em> de nuestro modelo de datos se ha agregado al campo <em>Axis</em> de la visualización, y que la medida <em>Margin</em> ha ocupado el campo <em>Value</em>. Es decir, el campo <em>Axis</em> hace referencia al eje vertical en el que se muestran los valores que tome nuestro campo. Podemos comprobar esto moviendo el cursor por encima de los puntos verdes que representan nuestros valores (subcategorías en el ejemplo):
El campo <em>Axis Category I</em>, a su vez, hace referencia al eje X, que nos permite desglosar nuestro datos según otra dimensión. Si, por ejemplo, arrastramos a este campo <em>Axis Category I</em> el campo <em>Country</em> de nuestros datos (conteniendo los nombres de los países en los que se realizan las ventas), el resultado es el siguiente:
Ahora vemos la distribución del margen por subcategoría y por país. La visualización puede mostrarse también horizontalmente (<em>Formato > Orientation</em>):
En <em>Formato > Box options > Whisker type</em> podemos configurar cómo queremos que se calculen los "caps" de cada caja (los límites superior e inferior del eje que atraviesa cada caja): Por defecto se considera la opción "<em>Min/Max</em>", de forma que son los valores mínimo y máximo de nuestros valores los que establecen los valores de los caps, pero podemos escoger la opción <em>1.5 IQR</em>, por ejemplo, que limita los caps a 1.5 veces el rango intercuantil, o la opción <em>One Standard Deviation</em>, que limita los caps a una desviación estándar (considerando los puntos más alejados como "<em>outliers</em>"):
Estos outliers, una vez identificados (sea cual sea la opción escogida) pueden ocultarse en <em>Formato > Box Options > Outliers</em>:
Además de las opciones mencionadas ("<em>Min/Max</em>" , "<em>= 1.5 IRQ</em>" y "<em>One Standard Deviation</em>") hay otra opción de difícil interpretación ("<em>< 1.5 IRQ</em>") y otra <em>Custom</em> que permite especificar el mínimo y máximo percentil que limitarán la posición de los caps (fuera de los cuáles los valores se consideran <em>outliers</em>).
En las imágenes mostradas hasta ahora puede verse un círculo blanco en el interior de las cajas que representa el valor medio de los valores representados. Esto puede activarse o desactivarse en <em>Formato > Mean</em>.
Los ejes X e Y son configurables también (valores mínimo y máximo en el eje Y, número de cifras decimales a mostrar, color de la fuente, tamaño, etc., así como se puede mostrar o no el grid.
El campo de la visualización <em>Axis category II</em> permite replicar la gráfica desagregando los datos según una dimensión adicional (lo que frecuentemente se denomina <em>faces</em>). Así, si llevamos el campo <em>Gender</em> (que contiene el género de los clientes) a este campo, obtenemos el siguiente resultado:
En fin, montones de opciones disponibles para analizar la distribución de nuestros datos. Visualización muy recomendada.
', 'es') (Line: 118)
Drupal\filter\Element\ProcessedText::preRenderText(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 88)
__TwigTemplate_a7d6005c89ae729617b9a0c2bccb1776->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 46)
__TwigTemplate_804f7948456cfe20e11a34c43439c7c2->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 43)
__TwigTemplate_bd990293b89f3b78c69fe0ee2f7828b5->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/contrib/classy/templates/field/field--text-with-summary.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 74)
__TwigTemplate_94047fbdba6937b76a4479dfa1763452->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/custom/yg_aesthetic/templates/node.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterMetaData is deprecated in Drupal\Core\Database\Query\Select->addMetaData() (line 178 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addMetaData('entity_type', 'file') (Line: 115)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 640)
Drupal\Core\Entity\EntityStorageBase->loadByProperties(Array) (Line: 63)
Drupal\Core\Entity\EntityRepository->loadEntityByUuid('file', '1b21aa98-edd4-4690-8c60-a314e4c2be2c') (Line: 95)
Drupal\editor\Plugin\Filter\EditorFileReference->process('La visualización <strong>Box and Whisker chart by MAQ Software</strong> ofrece innumerables opciones para visualizar la distribución de nuestros datos. Para comenzar, llevemos la visualización a nuestro lienzo y arrastremos a ella un campo categórico (el campo que contiene los nombres de las subcategorías en nuestro caso) y una medida (margen por categoría):
Vemos el típico diagrama de caja mostrando los cuartiles de la distribución. Los colores a usar en la caja pueden configurarse en <em>Formato > Box options</em> (véase siguiente imagen) y al mover el cursor encima de la caja o del eje vertical que la atraviesa se muestra una ventana flotante con información sobre al distribución:
Vemos que se muestra no solo los valores de los cuartiles, sino también información estadística como la media o el rango intercuantil.
Si echamos un vistazo a la configuración de la visualización...
...vemos que el campo <em>Subcategory</em> de nuestro modelo de datos se ha agregado al campo <em>Axis</em> de la visualización, y que la medida <em>Margin</em> ha ocupado el campo <em>Value</em>. Es decir, el campo <em>Axis</em> hace referencia al eje vertical en el que se muestran los valores que tome nuestro campo. Podemos comprobar esto moviendo el cursor por encima de los puntos verdes que representan nuestros valores (subcategorías en el ejemplo):
El campo <em>Axis Category I</em>, a su vez, hace referencia al eje X, que nos permite desglosar nuestro datos según otra dimensión. Si, por ejemplo, arrastramos a este campo <em>Axis Category I</em> el campo <em>Country</em> de nuestros datos (conteniendo los nombres de los países en los que se realizan las ventas), el resultado es el siguiente:
Ahora vemos la distribución del margen por subcategoría y por país. La visualización puede mostrarse también horizontalmente (<em>Formato > Orientation</em>):
En <em>Formato > Box options > Whisker type</em> podemos configurar cómo queremos que se calculen los "caps" de cada caja (los límites superior e inferior del eje que atraviesa cada caja): Por defecto se considera la opción "<em>Min/Max</em>", de forma que son los valores mínimo y máximo de nuestros valores los que establecen los valores de los caps, pero podemos escoger la opción <em>1.5 IQR</em>, por ejemplo, que limita los caps a 1.5 veces el rango intercuantil, o la opción <em>One Standard Deviation</em>, que limita los caps a una desviación estándar (considerando los puntos más alejados como "<em>outliers</em>"):
Estos outliers, una vez identificados (sea cual sea la opción escogida) pueden ocultarse en <em>Formato > Box Options > Outliers</em>:
Además de las opciones mencionadas ("<em>Min/Max</em>" , "<em>= 1.5 IRQ</em>" y "<em>One Standard Deviation</em>") hay otra opción de difícil interpretación ("<em>< 1.5 IRQ</em>") y otra <em>Custom</em> que permite especificar el mínimo y máximo percentil que limitarán la posición de los caps (fuera de los cuáles los valores se consideran <em>outliers</em>).
En las imágenes mostradas hasta ahora puede verse un círculo blanco en el interior de las cajas que representa el valor medio de los valores representados. Esto puede activarse o desactivarse en <em>Formato > Mean</em>.
Los ejes X e Y son configurables también (valores mínimo y máximo en el eje Y, número de cifras decimales a mostrar, color de la fuente, tamaño, etc., así como se puede mostrar o no el grid.
El campo de la visualización <em>Axis category II</em> permite replicar la gráfica desagregando los datos según una dimensión adicional (lo que frecuentemente se denomina <em>faces</em>). Así, si llevamos el campo <em>Gender</em> (que contiene el género de los clientes) a este campo, obtenemos el siguiente resultado:
En fin, montones de opciones disponibles para analizar la distribución de nuestros datos. Visualización muy recomendada.
', 'es') (Line: 118)
Drupal\filter\Element\ProcessedText::preRenderText(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 88)
__TwigTemplate_a7d6005c89ae729617b9a0c2bccb1776->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 46)
__TwigTemplate_804f7948456cfe20e11a34c43439c7c2->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 43)
__TwigTemplate_bd990293b89f3b78c69fe0ee2f7828b5->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/contrib/classy/templates/field/field--text-with-summary.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 74)
__TwigTemplate_94047fbdba6937b76a4479dfa1763452->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/custom/yg_aesthetic/templates/node.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterTags is deprecated in Drupal\Core\Database\Query\Select->addTag() (line 149 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addTag('entity_query') (Line: 147)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 640)
Drupal\Core\Entity\EntityStorageBase->loadByProperties(Array) (Line: 63)
Drupal\Core\Entity\EntityRepository->loadEntityByUuid('file', '1b21aa98-edd4-4690-8c60-a314e4c2be2c') (Line: 95)
Drupal\editor\Plugin\Filter\EditorFileReference->process('La visualización <strong>Box and Whisker chart by MAQ Software</strong> ofrece innumerables opciones para visualizar la distribución de nuestros datos. Para comenzar, llevemos la visualización a nuestro lienzo y arrastremos a ella un campo categórico (el campo que contiene los nombres de las subcategorías en nuestro caso) y una medida (margen por categoría):
Vemos el típico diagrama de caja mostrando los cuartiles de la distribución. Los colores a usar en la caja pueden configurarse en <em>Formato > Box options</em> (véase siguiente imagen) y al mover el cursor encima de la caja o del eje vertical que la atraviesa se muestra una ventana flotante con información sobre al distribución:
Vemos que se muestra no solo los valores de los cuartiles, sino también información estadística como la media o el rango intercuantil.
Si echamos un vistazo a la configuración de la visualización...
...vemos que el campo <em>Subcategory</em> de nuestro modelo de datos se ha agregado al campo <em>Axis</em> de la visualización, y que la medida <em>Margin</em> ha ocupado el campo <em>Value</em>. Es decir, el campo <em>Axis</em> hace referencia al eje vertical en el que se muestran los valores que tome nuestro campo. Podemos comprobar esto moviendo el cursor por encima de los puntos verdes que representan nuestros valores (subcategorías en el ejemplo):
El campo <em>Axis Category I</em>, a su vez, hace referencia al eje X, que nos permite desglosar nuestro datos según otra dimensión. Si, por ejemplo, arrastramos a este campo <em>Axis Category I</em> el campo <em>Country</em> de nuestros datos (conteniendo los nombres de los países en los que se realizan las ventas), el resultado es el siguiente:
Ahora vemos la distribución del margen por subcategoría y por país. La visualización puede mostrarse también horizontalmente (<em>Formato > Orientation</em>):
En <em>Formato > Box options > Whisker type</em> podemos configurar cómo queremos que se calculen los "caps" de cada caja (los límites superior e inferior del eje que atraviesa cada caja): Por defecto se considera la opción "<em>Min/Max</em>", de forma que son los valores mínimo y máximo de nuestros valores los que establecen los valores de los caps, pero podemos escoger la opción <em>1.5 IQR</em>, por ejemplo, que limita los caps a 1.5 veces el rango intercuantil, o la opción <em>One Standard Deviation</em>, que limita los caps a una desviación estándar (considerando los puntos más alejados como "<em>outliers</em>"):
Estos outliers, una vez identificados (sea cual sea la opción escogida) pueden ocultarse en <em>Formato > Box Options > Outliers</em>:
Además de las opciones mencionadas ("<em>Min/Max</em>" , "<em>= 1.5 IRQ</em>" y "<em>One Standard Deviation</em>") hay otra opción de difícil interpretación ("<em>< 1.5 IRQ</em>") y otra <em>Custom</em> que permite especificar el mínimo y máximo percentil que limitarán la posición de los caps (fuera de los cuáles los valores se consideran <em>outliers</em>).
En las imágenes mostradas hasta ahora puede verse un círculo blanco en el interior de las cajas que representa el valor medio de los valores representados. Esto puede activarse o desactivarse en <em>Formato > Mean</em>.
Los ejes X e Y son configurables también (valores mínimo y máximo en el eje Y, número de cifras decimales a mostrar, color de la fuente, tamaño, etc., así como se puede mostrar o no el grid.
El campo de la visualización <em>Axis category II</em> permite replicar la gráfica desagregando los datos según una dimensión adicional (lo que frecuentemente se denomina <em>faces</em>). Así, si llevamos el campo <em>Gender</em> (que contiene el género de los clientes) a este campo, obtenemos el siguiente resultado:
En fin, montones de opciones disponibles para analizar la distribución de nuestros datos. Visualización muy recomendada.
', 'es') (Line: 118)
Drupal\filter\Element\ProcessedText::preRenderText(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 88)
__TwigTemplate_a7d6005c89ae729617b9a0c2bccb1776->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 46)
__TwigTemplate_804f7948456cfe20e11a34c43439c7c2->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 43)
__TwigTemplate_bd990293b89f3b78c69fe0ee2f7828b5->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/contrib/classy/templates/field/field--text-with-summary.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 74)
__TwigTemplate_94047fbdba6937b76a4479dfa1763452->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/custom/yg_aesthetic/templates/node.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterMetaData is deprecated in Drupal\Core\Database\Query\Select->addMetaData() (line 178 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addMetaData('entity_type', 'file') (Line: 115)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 640)
Drupal\Core\Entity\EntityStorageBase->loadByProperties(Array) (Line: 63)
Drupal\Core\Entity\EntityRepository->loadEntityByUuid('file', '1b21aa98-edd4-4690-8c60-a314e4c2be2c') (Line: 124)
Drupal\editor\Plugin\Filter\EditorFileReference->process('La visualización <strong>Box and Whisker chart by MAQ Software</strong> ofrece innumerables opciones para visualizar la distribución de nuestros datos. Para comenzar, llevemos la visualización a nuestro lienzo y arrastremos a ella un campo categórico (el campo que contiene los nombres de las subcategorías en nuestro caso) y una medida (margen por categoría):
Vemos el típico diagrama de caja mostrando los cuartiles de la distribución. Los colores a usar en la caja pueden configurarse en <em>Formato > Box options</em> (véase siguiente imagen) y al mover el cursor encima de la caja o del eje vertical que la atraviesa se muestra una ventana flotante con información sobre al distribución:
Vemos que se muestra no solo los valores de los cuartiles, sino también información estadística como la media o el rango intercuantil.
Si echamos un vistazo a la configuración de la visualización...
...vemos que el campo <em>Subcategory</em> de nuestro modelo de datos se ha agregado al campo <em>Axis</em> de la visualización, y que la medida <em>Margin</em> ha ocupado el campo <em>Value</em>. Es decir, el campo <em>Axis</em> hace referencia al eje vertical en el que se muestran los valores que tome nuestro campo. Podemos comprobar esto moviendo el cursor por encima de los puntos verdes que representan nuestros valores (subcategorías en el ejemplo):
El campo <em>Axis Category I</em>, a su vez, hace referencia al eje X, que nos permite desglosar nuestro datos según otra dimensión. Si, por ejemplo, arrastramos a este campo <em>Axis Category I</em> el campo <em>Country</em> de nuestros datos (conteniendo los nombres de los países en los que se realizan las ventas), el resultado es el siguiente:
Ahora vemos la distribución del margen por subcategoría y por país. La visualización puede mostrarse también horizontalmente (<em>Formato > Orientation</em>):
En <em>Formato > Box options > Whisker type</em> podemos configurar cómo queremos que se calculen los "caps" de cada caja (los límites superior e inferior del eje que atraviesa cada caja): Por defecto se considera la opción "<em>Min/Max</em>", de forma que son los valores mínimo y máximo de nuestros valores los que establecen los valores de los caps, pero podemos escoger la opción <em>1.5 IQR</em>, por ejemplo, que limita los caps a 1.5 veces el rango intercuantil, o la opción <em>One Standard Deviation</em>, que limita los caps a una desviación estándar (considerando los puntos más alejados como "<em>outliers</em>"):
Estos outliers, una vez identificados (sea cual sea la opción escogida) pueden ocultarse en <em>Formato > Box Options > Outliers</em>:
Además de las opciones mencionadas ("<em>Min/Max</em>" , "<em>= 1.5 IRQ</em>" y "<em>One Standard Deviation</em>") hay otra opción de difícil interpretación ("<em>< 1.5 IRQ</em>") y otra <em>Custom</em> que permite especificar el mínimo y máximo percentil que limitarán la posición de los caps (fuera de los cuáles los valores se consideran <em>outliers</em>).
En las imágenes mostradas hasta ahora puede verse un círculo blanco en el interior de las cajas que representa el valor medio de los valores representados. Esto puede activarse o desactivarse en <em>Formato > Mean</em>.
Los ejes X e Y son configurables también (valores mínimo y máximo en el eje Y, número de cifras decimales a mostrar, color de la fuente, tamaño, etc., así como se puede mostrar o no el grid.
El campo de la visualización <em>Axis category II</em> permite replicar la gráfica desagregando los datos según una dimensión adicional (lo que frecuentemente se denomina <em>faces</em>). Así, si llevamos el campo <em>Gender</em> (que contiene el género de los clientes) a este campo, obtenemos el siguiente resultado:
En fin, montones de opciones disponibles para analizar la distribución de nuestros datos. Visualización muy recomendada.
', 'es') (Line: 118)
Drupal\filter\Element\ProcessedText::preRenderText(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 88)
__TwigTemplate_a7d6005c89ae729617b9a0c2bccb1776->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 46)
__TwigTemplate_804f7948456cfe20e11a34c43439c7c2->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 43)
__TwigTemplate_bd990293b89f3b78c69fe0ee2f7828b5->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/contrib/classy/templates/field/field--text-with-summary.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 74)
__TwigTemplate_94047fbdba6937b76a4479dfa1763452->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/custom/yg_aesthetic/templates/node.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterTags is deprecated in Drupal\Core\Database\Query\Select->addTag() (line 149 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addTag('entity_query') (Line: 147)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 640)
Drupal\Core\Entity\EntityStorageBase->loadByProperties(Array) (Line: 63)
Drupal\Core\Entity\EntityRepository->loadEntityByUuid('file', '1b21aa98-edd4-4690-8c60-a314e4c2be2c') (Line: 124)
Drupal\editor\Plugin\Filter\EditorFileReference->process('La visualización <strong>Box and Whisker chart by MAQ Software</strong> ofrece innumerables opciones para visualizar la distribución de nuestros datos. Para comenzar, llevemos la visualización a nuestro lienzo y arrastremos a ella un campo categórico (el campo que contiene los nombres de las subcategorías en nuestro caso) y una medida (margen por categoría):
Vemos el típico diagrama de caja mostrando los cuartiles de la distribución. Los colores a usar en la caja pueden configurarse en <em>Formato > Box options</em> (véase siguiente imagen) y al mover el cursor encima de la caja o del eje vertical que la atraviesa se muestra una ventana flotante con información sobre al distribución:
Vemos que se muestra no solo los valores de los cuartiles, sino también información estadística como la media o el rango intercuantil.
Si echamos un vistazo a la configuración de la visualización...
...vemos que el campo <em>Subcategory</em> de nuestro modelo de datos se ha agregado al campo <em>Axis</em> de la visualización, y que la medida <em>Margin</em> ha ocupado el campo <em>Value</em>. Es decir, el campo <em>Axis</em> hace referencia al eje vertical en el que se muestran los valores que tome nuestro campo. Podemos comprobar esto moviendo el cursor por encima de los puntos verdes que representan nuestros valores (subcategorías en el ejemplo):
El campo <em>Axis Category I</em>, a su vez, hace referencia al eje X, que nos permite desglosar nuestro datos según otra dimensión. Si, por ejemplo, arrastramos a este campo <em>Axis Category I</em> el campo <em>Country</em> de nuestros datos (conteniendo los nombres de los países en los que se realizan las ventas), el resultado es el siguiente:
Ahora vemos la distribución del margen por subcategoría y por país. La visualización puede mostrarse también horizontalmente (<em>Formato > Orientation</em>):
En <em>Formato > Box options > Whisker type</em> podemos configurar cómo queremos que se calculen los "caps" de cada caja (los límites superior e inferior del eje que atraviesa cada caja): Por defecto se considera la opción "<em>Min/Max</em>", de forma que son los valores mínimo y máximo de nuestros valores los que establecen los valores de los caps, pero podemos escoger la opción <em>1.5 IQR</em>, por ejemplo, que limita los caps a 1.5 veces el rango intercuantil, o la opción <em>One Standard Deviation</em>, que limita los caps a una desviación estándar (considerando los puntos más alejados como "<em>outliers</em>"):
Estos outliers, una vez identificados (sea cual sea la opción escogida) pueden ocultarse en <em>Formato > Box Options > Outliers</em>:
Además de las opciones mencionadas ("<em>Min/Max</em>" , "<em>= 1.5 IRQ</em>" y "<em>One Standard Deviation</em>") hay otra opción de difícil interpretación ("<em>< 1.5 IRQ</em>") y otra <em>Custom</em> que permite especificar el mínimo y máximo percentil que limitarán la posición de los caps (fuera de los cuáles los valores se consideran <em>outliers</em>).
En las imágenes mostradas hasta ahora puede verse un círculo blanco en el interior de las cajas que representa el valor medio de los valores representados. Esto puede activarse o desactivarse en <em>Formato > Mean</em>.
Los ejes X e Y son configurables también (valores mínimo y máximo en el eje Y, número de cifras decimales a mostrar, color de la fuente, tamaño, etc., así como se puede mostrar o no el grid.
El campo de la visualización <em>Axis category II</em> permite replicar la gráfica desagregando los datos según una dimensión adicional (lo que frecuentemente se denomina <em>faces</em>). Así, si llevamos el campo <em>Gender</em> (que contiene el género de los clientes) a este campo, obtenemos el siguiente resultado:
En fin, montones de opciones disponibles para analizar la distribución de nuestros datos. Visualización muy recomendada.
', 'es') (Line: 118)
Drupal\filter\Element\ProcessedText::preRenderText(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 88)
__TwigTemplate_a7d6005c89ae729617b9a0c2bccb1776->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 46)
__TwigTemplate_804f7948456cfe20e11a34c43439c7c2->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 43)
__TwigTemplate_bd990293b89f3b78c69fe0ee2f7828b5->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/contrib/classy/templates/field/field--text-with-summary.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 74)
__TwigTemplate_94047fbdba6937b76a4479dfa1763452->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/custom/yg_aesthetic/templates/node.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterMetaData is deprecated in Drupal\Core\Database\Query\Select->addMetaData() (line 178 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addMetaData('entity_type', 'file') (Line: 115)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 640)
Drupal\Core\Entity\EntityStorageBase->loadByProperties(Array) (Line: 63)
Drupal\Core\Entity\EntityRepository->loadEntityByUuid('file', '4111d732-3b08-414f-8c6e-e39fbf1e9eb4') (Line: 95)
Drupal\editor\Plugin\Filter\EditorFileReference->process('La visualización <strong>Box and Whisker chart by MAQ Software</strong> ofrece innumerables opciones para visualizar la distribución de nuestros datos. Para comenzar, llevemos la visualización a nuestro lienzo y arrastremos a ella un campo categórico (el campo que contiene los nombres de las subcategorías en nuestro caso) y una medida (margen por categoría):
Vemos el típico diagrama de caja mostrando los cuartiles de la distribución. Los colores a usar en la caja pueden configurarse en <em>Formato > Box options</em> (véase siguiente imagen) y al mover el cursor encima de la caja o del eje vertical que la atraviesa se muestra una ventana flotante con información sobre al distribución:
Vemos que se muestra no solo los valores de los cuartiles, sino también información estadística como la media o el rango intercuantil.
Si echamos un vistazo a la configuración de la visualización...
...vemos que el campo <em>Subcategory</em> de nuestro modelo de datos se ha agregado al campo <em>Axis</em> de la visualización, y que la medida <em>Margin</em> ha ocupado el campo <em>Value</em>. Es decir, el campo <em>Axis</em> hace referencia al eje vertical en el que se muestran los valores que tome nuestro campo. Podemos comprobar esto moviendo el cursor por encima de los puntos verdes que representan nuestros valores (subcategorías en el ejemplo):
El campo <em>Axis Category I</em>, a su vez, hace referencia al eje X, que nos permite desglosar nuestro datos según otra dimensión. Si, por ejemplo, arrastramos a este campo <em>Axis Category I</em> el campo <em>Country</em> de nuestros datos (conteniendo los nombres de los países en los que se realizan las ventas), el resultado es el siguiente:
Ahora vemos la distribución del margen por subcategoría y por país. La visualización puede mostrarse también horizontalmente (<em>Formato > Orientation</em>):
En <em>Formato > Box options > Whisker type</em> podemos configurar cómo queremos que se calculen los "caps" de cada caja (los límites superior e inferior del eje que atraviesa cada caja): Por defecto se considera la opción "<em>Min/Max</em>", de forma que son los valores mínimo y máximo de nuestros valores los que establecen los valores de los caps, pero podemos escoger la opción <em>1.5 IQR</em>, por ejemplo, que limita los caps a 1.5 veces el rango intercuantil, o la opción <em>One Standard Deviation</em>, que limita los caps a una desviación estándar (considerando los puntos más alejados como "<em>outliers</em>"):
Estos outliers, una vez identificados (sea cual sea la opción escogida) pueden ocultarse en <em>Formato > Box Options > Outliers</em>:
Además de las opciones mencionadas ("<em>Min/Max</em>" , "<em>= 1.5 IRQ</em>" y "<em>One Standard Deviation</em>") hay otra opción de difícil interpretación ("<em>< 1.5 IRQ</em>") y otra <em>Custom</em> que permite especificar el mínimo y máximo percentil que limitarán la posición de los caps (fuera de los cuáles los valores se consideran <em>outliers</em>).
En las imágenes mostradas hasta ahora puede verse un círculo blanco en el interior de las cajas que representa el valor medio de los valores representados. Esto puede activarse o desactivarse en <em>Formato > Mean</em>.
Los ejes X e Y son configurables también (valores mínimo y máximo en el eje Y, número de cifras decimales a mostrar, color de la fuente, tamaño, etc., así como se puede mostrar o no el grid.
El campo de la visualización <em>Axis category II</em> permite replicar la gráfica desagregando los datos según una dimensión adicional (lo que frecuentemente se denomina <em>faces</em>). Así, si llevamos el campo <em>Gender</em> (que contiene el género de los clientes) a este campo, obtenemos el siguiente resultado:
En fin, montones de opciones disponibles para analizar la distribución de nuestros datos. Visualización muy recomendada.
', 'es') (Line: 118)
Drupal\filter\Element\ProcessedText::preRenderText(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 88)
__TwigTemplate_a7d6005c89ae729617b9a0c2bccb1776->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 46)
__TwigTemplate_804f7948456cfe20e11a34c43439c7c2->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 43)
__TwigTemplate_bd990293b89f3b78c69fe0ee2f7828b5->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/contrib/classy/templates/field/field--text-with-summary.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 74)
__TwigTemplate_94047fbdba6937b76a4479dfa1763452->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/custom/yg_aesthetic/templates/node.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterTags is deprecated in Drupal\Core\Database\Query\Select->addTag() (line 149 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addTag('entity_query') (Line: 147)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 640)
Drupal\Core\Entity\EntityStorageBase->loadByProperties(Array) (Line: 63)
Drupal\Core\Entity\EntityRepository->loadEntityByUuid('file', '4111d732-3b08-414f-8c6e-e39fbf1e9eb4') (Line: 95)
Drupal\editor\Plugin\Filter\EditorFileReference->process('La visualización <strong>Box and Whisker chart by MAQ Software</strong> ofrece innumerables opciones para visualizar la distribución de nuestros datos. Para comenzar, llevemos la visualización a nuestro lienzo y arrastremos a ella un campo categórico (el campo que contiene los nombres de las subcategorías en nuestro caso) y una medida (margen por categoría):
Vemos el típico diagrama de caja mostrando los cuartiles de la distribución. Los colores a usar en la caja pueden configurarse en <em>Formato > Box options</em> (véase siguiente imagen) y al mover el cursor encima de la caja o del eje vertical que la atraviesa se muestra una ventana flotante con información sobre al distribución:
Vemos que se muestra no solo los valores de los cuartiles, sino también información estadística como la media o el rango intercuantil.
Si echamos un vistazo a la configuración de la visualización...
...vemos que el campo <em>Subcategory</em> de nuestro modelo de datos se ha agregado al campo <em>Axis</em> de la visualización, y que la medida <em>Margin</em> ha ocupado el campo <em>Value</em>. Es decir, el campo <em>Axis</em> hace referencia al eje vertical en el que se muestran los valores que tome nuestro campo. Podemos comprobar esto moviendo el cursor por encima de los puntos verdes que representan nuestros valores (subcategorías en el ejemplo):
El campo <em>Axis Category I</em>, a su vez, hace referencia al eje X, que nos permite desglosar nuestro datos según otra dimensión. Si, por ejemplo, arrastramos a este campo <em>Axis Category I</em> el campo <em>Country</em> de nuestros datos (conteniendo los nombres de los países en los que se realizan las ventas), el resultado es el siguiente:
Ahora vemos la distribución del margen por subcategoría y por país. La visualización puede mostrarse también horizontalmente (<em>Formato > Orientation</em>):
En <em>Formato > Box options > Whisker type</em> podemos configurar cómo queremos que se calculen los "caps" de cada caja (los límites superior e inferior del eje que atraviesa cada caja): Por defecto se considera la opción "<em>Min/Max</em>", de forma que son los valores mínimo y máximo de nuestros valores los que establecen los valores de los caps, pero podemos escoger la opción <em>1.5 IQR</em>, por ejemplo, que limita los caps a 1.5 veces el rango intercuantil, o la opción <em>One Standard Deviation</em>, que limita los caps a una desviación estándar (considerando los puntos más alejados como "<em>outliers</em>"):
Estos outliers, una vez identificados (sea cual sea la opción escogida) pueden ocultarse en <em>Formato > Box Options > Outliers</em>:
Además de las opciones mencionadas ("<em>Min/Max</em>" , "<em>= 1.5 IRQ</em>" y "<em>One Standard Deviation</em>") hay otra opción de difícil interpretación ("<em>< 1.5 IRQ</em>") y otra <em>Custom</em> que permite especificar el mínimo y máximo percentil que limitarán la posición de los caps (fuera de los cuáles los valores se consideran <em>outliers</em>).
En las imágenes mostradas hasta ahora puede verse un círculo blanco en el interior de las cajas que representa el valor medio de los valores representados. Esto puede activarse o desactivarse en <em>Formato > Mean</em>.
Los ejes X e Y son configurables también (valores mínimo y máximo en el eje Y, número de cifras decimales a mostrar, color de la fuente, tamaño, etc., así como se puede mostrar o no el grid.
El campo de la visualización <em>Axis category II</em> permite replicar la gráfica desagregando los datos según una dimensión adicional (lo que frecuentemente se denomina <em>faces</em>). Así, si llevamos el campo <em>Gender</em> (que contiene el género de los clientes) a este campo, obtenemos el siguiente resultado:
En fin, montones de opciones disponibles para analizar la distribución de nuestros datos. Visualización muy recomendada.
', 'es') (Line: 118)
Drupal\filter\Element\ProcessedText::preRenderText(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 88)
__TwigTemplate_a7d6005c89ae729617b9a0c2bccb1776->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 46)
__TwigTemplate_804f7948456cfe20e11a34c43439c7c2->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 43)
__TwigTemplate_bd990293b89f3b78c69fe0ee2f7828b5->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/contrib/classy/templates/field/field--text-with-summary.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 74)
__TwigTemplate_94047fbdba6937b76a4479dfa1763452->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/custom/yg_aesthetic/templates/node.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterMetaData is deprecated in Drupal\Core\Database\Query\Select->addMetaData() (line 178 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addMetaData('entity_type', 'file') (Line: 115)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 640)
Drupal\Core\Entity\EntityStorageBase->loadByProperties(Array) (Line: 63)
Drupal\Core\Entity\EntityRepository->loadEntityByUuid('file', '4111d732-3b08-414f-8c6e-e39fbf1e9eb4') (Line: 124)
Drupal\editor\Plugin\Filter\EditorFileReference->process('La visualización <strong>Box and Whisker chart by MAQ Software</strong> ofrece innumerables opciones para visualizar la distribución de nuestros datos. Para comenzar, llevemos la visualización a nuestro lienzo y arrastremos a ella un campo categórico (el campo que contiene los nombres de las subcategorías en nuestro caso) y una medida (margen por categoría):
Vemos el típico diagrama de caja mostrando los cuartiles de la distribución. Los colores a usar en la caja pueden configurarse en <em>Formato > Box options</em> (véase siguiente imagen) y al mover el cursor encima de la caja o del eje vertical que la atraviesa se muestra una ventana flotante con información sobre al distribución:
Vemos que se muestra no solo los valores de los cuartiles, sino también información estadística como la media o el rango intercuantil.
Si echamos un vistazo a la configuración de la visualización...
...vemos que el campo <em>Subcategory</em> de nuestro modelo de datos se ha agregado al campo <em>Axis</em> de la visualización, y que la medida <em>Margin</em> ha ocupado el campo <em>Value</em>. Es decir, el campo <em>Axis</em> hace referencia al eje vertical en el que se muestran los valores que tome nuestro campo. Podemos comprobar esto moviendo el cursor por encima de los puntos verdes que representan nuestros valores (subcategorías en el ejemplo):
El campo <em>Axis Category I</em>, a su vez, hace referencia al eje X, que nos permite desglosar nuestro datos según otra dimensión. Si, por ejemplo, arrastramos a este campo <em>Axis Category I</em> el campo <em>Country</em> de nuestros datos (conteniendo los nombres de los países en los que se realizan las ventas), el resultado es el siguiente:
Ahora vemos la distribución del margen por subcategoría y por país. La visualización puede mostrarse también horizontalmente (<em>Formato > Orientation</em>):
En <em>Formato > Box options > Whisker type</em> podemos configurar cómo queremos que se calculen los "caps" de cada caja (los límites superior e inferior del eje que atraviesa cada caja): Por defecto se considera la opción "<em>Min/Max</em>", de forma que son los valores mínimo y máximo de nuestros valores los que establecen los valores de los caps, pero podemos escoger la opción <em>1.5 IQR</em>, por ejemplo, que limita los caps a 1.5 veces el rango intercuantil, o la opción <em>One Standard Deviation</em>, que limita los caps a una desviación estándar (considerando los puntos más alejados como "<em>outliers</em>"):
Estos outliers, una vez identificados (sea cual sea la opción escogida) pueden ocultarse en <em>Formato > Box Options > Outliers</em>:
Además de las opciones mencionadas ("<em>Min/Max</em>" , "<em>= 1.5 IRQ</em>" y "<em>One Standard Deviation</em>") hay otra opción de difícil interpretación ("<em>< 1.5 IRQ</em>") y otra <em>Custom</em> que permite especificar el mínimo y máximo percentil que limitarán la posición de los caps (fuera de los cuáles los valores se consideran <em>outliers</em>).
En las imágenes mostradas hasta ahora puede verse un círculo blanco en el interior de las cajas que representa el valor medio de los valores representados. Esto puede activarse o desactivarse en <em>Formato > Mean</em>.
Los ejes X e Y son configurables también (valores mínimo y máximo en el eje Y, número de cifras decimales a mostrar, color de la fuente, tamaño, etc., así como se puede mostrar o no el grid.
El campo de la visualización <em>Axis category II</em> permite replicar la gráfica desagregando los datos según una dimensión adicional (lo que frecuentemente se denomina <em>faces</em>). Así, si llevamos el campo <em>Gender</em> (que contiene el género de los clientes) a este campo, obtenemos el siguiente resultado:
En fin, montones de opciones disponibles para analizar la distribución de nuestros datos. Visualización muy recomendada.
', 'es') (Line: 118)
Drupal\filter\Element\ProcessedText::preRenderText(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 88)
__TwigTemplate_a7d6005c89ae729617b9a0c2bccb1776->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 46)
__TwigTemplate_804f7948456cfe20e11a34c43439c7c2->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 43)
__TwigTemplate_bd990293b89f3b78c69fe0ee2f7828b5->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/contrib/classy/templates/field/field--text-with-summary.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 74)
__TwigTemplate_94047fbdba6937b76a4479dfa1763452->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/custom/yg_aesthetic/templates/node.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterTags is deprecated in Drupal\Core\Database\Query\Select->addTag() (line 149 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addTag('entity_query') (Line: 147)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 640)
Drupal\Core\Entity\EntityStorageBase->loadByProperties(Array) (Line: 63)
Drupal\Core\Entity\EntityRepository->loadEntityByUuid('file', '4111d732-3b08-414f-8c6e-e39fbf1e9eb4') (Line: 124)
Drupal\editor\Plugin\Filter\EditorFileReference->process('La visualización <strong>Box and Whisker chart by MAQ Software</strong> ofrece innumerables opciones para visualizar la distribución de nuestros datos. Para comenzar, llevemos la visualización a nuestro lienzo y arrastremos a ella un campo categórico (el campo que contiene los nombres de las subcategorías en nuestro caso) y una medida (margen por categoría):
Vemos el típico diagrama de caja mostrando los cuartiles de la distribución. Los colores a usar en la caja pueden configurarse en <em>Formato > Box options</em> (véase siguiente imagen) y al mover el cursor encima de la caja o del eje vertical que la atraviesa se muestra una ventana flotante con información sobre al distribución:
Vemos que se muestra no solo los valores de los cuartiles, sino también información estadística como la media o el rango intercuantil.
Si echamos un vistazo a la configuración de la visualización...
...vemos que el campo <em>Subcategory</em> de nuestro modelo de datos se ha agregado al campo <em>Axis</em> de la visualización, y que la medida <em>Margin</em> ha ocupado el campo <em>Value</em>. Es decir, el campo <em>Axis</em> hace referencia al eje vertical en el que se muestran los valores que tome nuestro campo. Podemos comprobar esto moviendo el cursor por encima de los puntos verdes que representan nuestros valores (subcategorías en el ejemplo):
El campo <em>Axis Category I</em>, a su vez, hace referencia al eje X, que nos permite desglosar nuestro datos según otra dimensión. Si, por ejemplo, arrastramos a este campo <em>Axis Category I</em> el campo <em>Country</em> de nuestros datos (conteniendo los nombres de los países en los que se realizan las ventas), el resultado es el siguiente:
Ahora vemos la distribución del margen por subcategoría y por país. La visualización puede mostrarse también horizontalmente (<em>Formato > Orientation</em>):
En <em>Formato > Box options > Whisker type</em> podemos configurar cómo queremos que se calculen los "caps" de cada caja (los límites superior e inferior del eje que atraviesa cada caja): Por defecto se considera la opción "<em>Min/Max</em>", de forma que son los valores mínimo y máximo de nuestros valores los que establecen los valores de los caps, pero podemos escoger la opción <em>1.5 IQR</em>, por ejemplo, que limita los caps a 1.5 veces el rango intercuantil, o la opción <em>One Standard Deviation</em>, que limita los caps a una desviación estándar (considerando los puntos más alejados como "<em>outliers</em>"):
Estos outliers, una vez identificados (sea cual sea la opción escogida) pueden ocultarse en <em>Formato > Box Options > Outliers</em>:
Además de las opciones mencionadas ("<em>Min/Max</em>" , "<em>= 1.5 IRQ</em>" y "<em>One Standard Deviation</em>") hay otra opción de difícil interpretación ("<em>< 1.5 IRQ</em>") y otra <em>Custom</em> que permite especificar el mínimo y máximo percentil que limitarán la posición de los caps (fuera de los cuáles los valores se consideran <em>outliers</em>).
En las imágenes mostradas hasta ahora puede verse un círculo blanco en el interior de las cajas que representa el valor medio de los valores representados. Esto puede activarse o desactivarse en <em>Formato > Mean</em>.
Los ejes X e Y son configurables también (valores mínimo y máximo en el eje Y, número de cifras decimales a mostrar, color de la fuente, tamaño, etc., así como se puede mostrar o no el grid.
El campo de la visualización <em>Axis category II</em> permite replicar la gráfica desagregando los datos según una dimensión adicional (lo que frecuentemente se denomina <em>faces</em>). Así, si llevamos el campo <em>Gender</em> (que contiene el género de los clientes) a este campo, obtenemos el siguiente resultado:
En fin, montones de opciones disponibles para analizar la distribución de nuestros datos. Visualización muy recomendada.
', 'es') (Line: 118)
Drupal\filter\Element\ProcessedText::preRenderText(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 88)
__TwigTemplate_a7d6005c89ae729617b9a0c2bccb1776->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 46)
__TwigTemplate_804f7948456cfe20e11a34c43439c7c2->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 43)
__TwigTemplate_bd990293b89f3b78c69fe0ee2f7828b5->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/contrib/classy/templates/field/field--text-with-summary.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 74)
__TwigTemplate_94047fbdba6937b76a4479dfa1763452->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/custom/yg_aesthetic/templates/node.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterMetaData is deprecated in Drupal\Core\Database\Query\Select->addMetaData() (line 178 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addMetaData('entity_type', 'file') (Line: 115)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 640)
Drupal\Core\Entity\EntityStorageBase->loadByProperties(Array) (Line: 63)
Drupal\Core\Entity\EntityRepository->loadEntityByUuid('file', 'a13f6d0f-36c0-47b3-98bc-0722dd8ecbb6') (Line: 95)
Drupal\editor\Plugin\Filter\EditorFileReference->process('La visualización <strong>Box and Whisker chart by MAQ Software</strong> ofrece innumerables opciones para visualizar la distribución de nuestros datos. Para comenzar, llevemos la visualización a nuestro lienzo y arrastremos a ella un campo categórico (el campo que contiene los nombres de las subcategorías en nuestro caso) y una medida (margen por categoría):
Vemos el típico diagrama de caja mostrando los cuartiles de la distribución. Los colores a usar en la caja pueden configurarse en <em>Formato > Box options</em> (véase siguiente imagen) y al mover el cursor encima de la caja o del eje vertical que la atraviesa se muestra una ventana flotante con información sobre al distribución:
Vemos que se muestra no solo los valores de los cuartiles, sino también información estadística como la media o el rango intercuantil.
Si echamos un vistazo a la configuración de la visualización...
...vemos que el campo <em>Subcategory</em> de nuestro modelo de datos se ha agregado al campo <em>Axis</em> de la visualización, y que la medida <em>Margin</em> ha ocupado el campo <em>Value</em>. Es decir, el campo <em>Axis</em> hace referencia al eje vertical en el que se muestran los valores que tome nuestro campo. Podemos comprobar esto moviendo el cursor por encima de los puntos verdes que representan nuestros valores (subcategorías en el ejemplo):
El campo <em>Axis Category I</em>, a su vez, hace referencia al eje X, que nos permite desglosar nuestro datos según otra dimensión. Si, por ejemplo, arrastramos a este campo <em>Axis Category I</em> el campo <em>Country</em> de nuestros datos (conteniendo los nombres de los países en los que se realizan las ventas), el resultado es el siguiente:
Ahora vemos la distribución del margen por subcategoría y por país. La visualización puede mostrarse también horizontalmente (<em>Formato > Orientation</em>):
En <em>Formato > Box options > Whisker type</em> podemos configurar cómo queremos que se calculen los "caps" de cada caja (los límites superior e inferior del eje que atraviesa cada caja): Por defecto se considera la opción "<em>Min/Max</em>", de forma que son los valores mínimo y máximo de nuestros valores los que establecen los valores de los caps, pero podemos escoger la opción <em>1.5 IQR</em>, por ejemplo, que limita los caps a 1.5 veces el rango intercuantil, o la opción <em>One Standard Deviation</em>, que limita los caps a una desviación estándar (considerando los puntos más alejados como "<em>outliers</em>"):
Estos outliers, una vez identificados (sea cual sea la opción escogida) pueden ocultarse en <em>Formato > Box Options > Outliers</em>:
Además de las opciones mencionadas ("<em>Min/Max</em>" , "<em>= 1.5 IRQ</em>" y "<em>One Standard Deviation</em>") hay otra opción de difícil interpretación ("<em>< 1.5 IRQ</em>") y otra <em>Custom</em> que permite especificar el mínimo y máximo percentil que limitarán la posición de los caps (fuera de los cuáles los valores se consideran <em>outliers</em>).
En las imágenes mostradas hasta ahora puede verse un círculo blanco en el interior de las cajas que representa el valor medio de los valores representados. Esto puede activarse o desactivarse en <em>Formato > Mean</em>.
Los ejes X e Y son configurables también (valores mínimo y máximo en el eje Y, número de cifras decimales a mostrar, color de la fuente, tamaño, etc., así como se puede mostrar o no el grid.
El campo de la visualización <em>Axis category II</em> permite replicar la gráfica desagregando los datos según una dimensión adicional (lo que frecuentemente se denomina <em>faces</em>). Así, si llevamos el campo <em>Gender</em> (que contiene el género de los clientes) a este campo, obtenemos el siguiente resultado:
En fin, montones de opciones disponibles para analizar la distribución de nuestros datos. Visualización muy recomendada.
', 'es') (Line: 118)
Drupal\filter\Element\ProcessedText::preRenderText(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 88)
__TwigTemplate_a7d6005c89ae729617b9a0c2bccb1776->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 46)
__TwigTemplate_804f7948456cfe20e11a34c43439c7c2->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 43)
__TwigTemplate_bd990293b89f3b78c69fe0ee2f7828b5->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/contrib/classy/templates/field/field--text-with-summary.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 74)
__TwigTemplate_94047fbdba6937b76a4479dfa1763452->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/custom/yg_aesthetic/templates/node.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterTags is deprecated in Drupal\Core\Database\Query\Select->addTag() (line 149 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addTag('entity_query') (Line: 147)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 640)
Drupal\Core\Entity\EntityStorageBase->loadByProperties(Array) (Line: 63)
Drupal\Core\Entity\EntityRepository->loadEntityByUuid('file', 'a13f6d0f-36c0-47b3-98bc-0722dd8ecbb6') (Line: 95)
Drupal\editor\Plugin\Filter\EditorFileReference->process('La visualización <strong>Box and Whisker chart by MAQ Software</strong> ofrece innumerables opciones para visualizar la distribución de nuestros datos. Para comenzar, llevemos la visualización a nuestro lienzo y arrastremos a ella un campo categórico (el campo que contiene los nombres de las subcategorías en nuestro caso) y una medida (margen por categoría):
Vemos el típico diagrama de caja mostrando los cuartiles de la distribución. Los colores a usar en la caja pueden configurarse en <em>Formato > Box options</em> (véase siguiente imagen) y al mover el cursor encima de la caja o del eje vertical que la atraviesa se muestra una ventana flotante con información sobre al distribución:
Vemos que se muestra no solo los valores de los cuartiles, sino también información estadística como la media o el rango intercuantil.
Si echamos un vistazo a la configuración de la visualización...
...vemos que el campo <em>Subcategory</em> de nuestro modelo de datos se ha agregado al campo <em>Axis</em> de la visualización, y que la medida <em>Margin</em> ha ocupado el campo <em>Value</em>. Es decir, el campo <em>Axis</em> hace referencia al eje vertical en el que se muestran los valores que tome nuestro campo. Podemos comprobar esto moviendo el cursor por encima de los puntos verdes que representan nuestros valores (subcategorías en el ejemplo):
El campo <em>Axis Category I</em>, a su vez, hace referencia al eje X, que nos permite desglosar nuestro datos según otra dimensión. Si, por ejemplo, arrastramos a este campo <em>Axis Category I</em> el campo <em>Country</em> de nuestros datos (conteniendo los nombres de los países en los que se realizan las ventas), el resultado es el siguiente:
Ahora vemos la distribución del margen por subcategoría y por país. La visualización puede mostrarse también horizontalmente (<em>Formato > Orientation</em>):
En <em>Formato > Box options > Whisker type</em> podemos configurar cómo queremos que se calculen los "caps" de cada caja (los límites superior e inferior del eje que atraviesa cada caja): Por defecto se considera la opción "<em>Min/Max</em>", de forma que son los valores mínimo y máximo de nuestros valores los que establecen los valores de los caps, pero podemos escoger la opción <em>1.5 IQR</em>, por ejemplo, que limita los caps a 1.5 veces el rango intercuantil, o la opción <em>One Standard Deviation</em>, que limita los caps a una desviación estándar (considerando los puntos más alejados como "<em>outliers</em>"):
Estos outliers, una vez identificados (sea cual sea la opción escogida) pueden ocultarse en <em>Formato > Box Options > Outliers</em>:
Además de las opciones mencionadas ("<em>Min/Max</em>" , "<em>= 1.5 IRQ</em>" y "<em>One Standard Deviation</em>") hay otra opción de difícil interpretación ("<em>< 1.5 IRQ</em>") y otra <em>Custom</em> que permite especificar el mínimo y máximo percentil que limitarán la posición de los caps (fuera de los cuáles los valores se consideran <em>outliers</em>).
En las imágenes mostradas hasta ahora puede verse un círculo blanco en el interior de las cajas que representa el valor medio de los valores representados. Esto puede activarse o desactivarse en <em>Formato > Mean</em>.
Los ejes X e Y son configurables también (valores mínimo y máximo en el eje Y, número de cifras decimales a mostrar, color de la fuente, tamaño, etc., así como se puede mostrar o no el grid.
El campo de la visualización <em>Axis category II</em> permite replicar la gráfica desagregando los datos según una dimensión adicional (lo que frecuentemente se denomina <em>faces</em>). Así, si llevamos el campo <em>Gender</em> (que contiene el género de los clientes) a este campo, obtenemos el siguiente resultado:
En fin, montones de opciones disponibles para analizar la distribución de nuestros datos. Visualización muy recomendada.
', 'es') (Line: 118)
Drupal\filter\Element\ProcessedText::preRenderText(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 88)
__TwigTemplate_a7d6005c89ae729617b9a0c2bccb1776->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 46)
__TwigTemplate_804f7948456cfe20e11a34c43439c7c2->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 43)
__TwigTemplate_bd990293b89f3b78c69fe0ee2f7828b5->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/contrib/classy/templates/field/field--text-with-summary.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 74)
__TwigTemplate_94047fbdba6937b76a4479dfa1763452->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/custom/yg_aesthetic/templates/node.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterMetaData is deprecated in Drupal\Core\Database\Query\Select->addMetaData() (line 178 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addMetaData('entity_type', 'file') (Line: 115)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 640)
Drupal\Core\Entity\EntityStorageBase->loadByProperties(Array) (Line: 63)
Drupal\Core\Entity\EntityRepository->loadEntityByUuid('file', 'a13f6d0f-36c0-47b3-98bc-0722dd8ecbb6') (Line: 124)
Drupal\editor\Plugin\Filter\EditorFileReference->process('La visualización <strong>Box and Whisker chart by MAQ Software</strong> ofrece innumerables opciones para visualizar la distribución de nuestros datos. Para comenzar, llevemos la visualización a nuestro lienzo y arrastremos a ella un campo categórico (el campo que contiene los nombres de las subcategorías en nuestro caso) y una medida (margen por categoría):
Vemos el típico diagrama de caja mostrando los cuartiles de la distribución. Los colores a usar en la caja pueden configurarse en <em>Formato > Box options</em> (véase siguiente imagen) y al mover el cursor encima de la caja o del eje vertical que la atraviesa se muestra una ventana flotante con información sobre al distribución:
Vemos que se muestra no solo los valores de los cuartiles, sino también información estadística como la media o el rango intercuantil.
Si echamos un vistazo a la configuración de la visualización...
...vemos que el campo <em>Subcategory</em> de nuestro modelo de datos se ha agregado al campo <em>Axis</em> de la visualización, y que la medida <em>Margin</em> ha ocupado el campo <em>Value</em>. Es decir, el campo <em>Axis</em> hace referencia al eje vertical en el que se muestran los valores que tome nuestro campo. Podemos comprobar esto moviendo el cursor por encima de los puntos verdes que representan nuestros valores (subcategorías en el ejemplo):
El campo <em>Axis Category I</em>, a su vez, hace referencia al eje X, que nos permite desglosar nuestro datos según otra dimensión. Si, por ejemplo, arrastramos a este campo <em>Axis Category I</em> el campo <em>Country</em> de nuestros datos (conteniendo los nombres de los países en los que se realizan las ventas), el resultado es el siguiente:
Ahora vemos la distribución del margen por subcategoría y por país. La visualización puede mostrarse también horizontalmente (<em>Formato > Orientation</em>):
En <em>Formato > Box options > Whisker type</em> podemos configurar cómo queremos que se calculen los "caps" de cada caja (los límites superior e inferior del eje que atraviesa cada caja): Por defecto se considera la opción "<em>Min/Max</em>", de forma que son los valores mínimo y máximo de nuestros valores los que establecen los valores de los caps, pero podemos escoger la opción <em>1.5 IQR</em>, por ejemplo, que limita los caps a 1.5 veces el rango intercuantil, o la opción <em>One Standard Deviation</em>, que limita los caps a una desviación estándar (considerando los puntos más alejados como "<em>outliers</em>"):
Estos outliers, una vez identificados (sea cual sea la opción escogida) pueden ocultarse en <em>Formato > Box Options > Outliers</em>:
Además de las opciones mencionadas ("<em>Min/Max</em>" , "<em>= 1.5 IRQ</em>" y "<em>One Standard Deviation</em>") hay otra opción de difícil interpretación ("<em>< 1.5 IRQ</em>") y otra <em>Custom</em> que permite especificar el mínimo y máximo percentil que limitarán la posición de los caps (fuera de los cuáles los valores se consideran <em>outliers</em>).
En las imágenes mostradas hasta ahora puede verse un círculo blanco en el interior de las cajas que representa el valor medio de los valores representados. Esto puede activarse o desactivarse en <em>Formato > Mean</em>.
Los ejes X e Y son configurables también (valores mínimo y máximo en el eje Y, número de cifras decimales a mostrar, color de la fuente, tamaño, etc., así como se puede mostrar o no el grid.
El campo de la visualización <em>Axis category II</em> permite replicar la gráfica desagregando los datos según una dimensión adicional (lo que frecuentemente se denomina <em>faces</em>). Así, si llevamos el campo <em>Gender</em> (que contiene el género de los clientes) a este campo, obtenemos el siguiente resultado:
En fin, montones de opciones disponibles para analizar la distribución de nuestros datos. Visualización muy recomendada.
', 'es') (Line: 118)
Drupal\filter\Element\ProcessedText::preRenderText(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 88)
__TwigTemplate_a7d6005c89ae729617b9a0c2bccb1776->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 46)
__TwigTemplate_804f7948456cfe20e11a34c43439c7c2->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 43)
__TwigTemplate_bd990293b89f3b78c69fe0ee2f7828b5->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/contrib/classy/templates/field/field--text-with-summary.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 74)
__TwigTemplate_94047fbdba6937b76a4479dfa1763452->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/custom/yg_aesthetic/templates/node.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterTags is deprecated in Drupal\Core\Database\Query\Select->addTag() (line 149 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addTag('entity_query') (Line: 147)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 640)
Drupal\Core\Entity\EntityStorageBase->loadByProperties(Array) (Line: 63)
Drupal\Core\Entity\EntityRepository->loadEntityByUuid('file', 'a13f6d0f-36c0-47b3-98bc-0722dd8ecbb6') (Line: 124)
Drupal\editor\Plugin\Filter\EditorFileReference->process('La visualización <strong>Box and Whisker chart by MAQ Software</strong> ofrece innumerables opciones para visualizar la distribución de nuestros datos. Para comenzar, llevemos la visualización a nuestro lienzo y arrastremos a ella un campo categórico (el campo que contiene los nombres de las subcategorías en nuestro caso) y una medida (margen por categoría):
Vemos el típico diagrama de caja mostrando los cuartiles de la distribución. Los colores a usar en la caja pueden configurarse en <em>Formato > Box options</em> (véase siguiente imagen) y al mover el cursor encima de la caja o del eje vertical que la atraviesa se muestra una ventana flotante con información sobre al distribución:
Vemos que se muestra no solo los valores de los cuartiles, sino también información estadística como la media o el rango intercuantil.
Si echamos un vistazo a la configuración de la visualización...
...vemos que el campo <em>Subcategory</em> de nuestro modelo de datos se ha agregado al campo <em>Axis</em> de la visualización, y que la medida <em>Margin</em> ha ocupado el campo <em>Value</em>. Es decir, el campo <em>Axis</em> hace referencia al eje vertical en el que se muestran los valores que tome nuestro campo. Podemos comprobar esto moviendo el cursor por encima de los puntos verdes que representan nuestros valores (subcategorías en el ejemplo):
El campo <em>Axis Category I</em>, a su vez, hace referencia al eje X, que nos permite desglosar nuestro datos según otra dimensión. Si, por ejemplo, arrastramos a este campo <em>Axis Category I</em> el campo <em>Country</em> de nuestros datos (conteniendo los nombres de los países en los que se realizan las ventas), el resultado es el siguiente:
Ahora vemos la distribución del margen por subcategoría y por país. La visualización puede mostrarse también horizontalmente (<em>Formato > Orientation</em>):
En <em>Formato > Box options > Whisker type</em> podemos configurar cómo queremos que se calculen los "caps" de cada caja (los límites superior e inferior del eje que atraviesa cada caja): Por defecto se considera la opción "<em>Min/Max</em>", de forma que son los valores mínimo y máximo de nuestros valores los que establecen los valores de los caps, pero podemos escoger la opción <em>1.5 IQR</em>, por ejemplo, que limita los caps a 1.5 veces el rango intercuantil, o la opción <em>One Standard Deviation</em>, que limita los caps a una desviación estándar (considerando los puntos más alejados como "<em>outliers</em>"):
Estos outliers, una vez identificados (sea cual sea la opción escogida) pueden ocultarse en <em>Formato > Box Options > Outliers</em>:
Además de las opciones mencionadas ("<em>Min/Max</em>" , "<em>= 1.5 IRQ</em>" y "<em>One Standard Deviation</em>") hay otra opción de difícil interpretación ("<em>< 1.5 IRQ</em>") y otra <em>Custom</em> que permite especificar el mínimo y máximo percentil que limitarán la posición de los caps (fuera de los cuáles los valores se consideran <em>outliers</em>).
En las imágenes mostradas hasta ahora puede verse un círculo blanco en el interior de las cajas que representa el valor medio de los valores representados. Esto puede activarse o desactivarse en <em>Formato > Mean</em>.
Los ejes X e Y son configurables también (valores mínimo y máximo en el eje Y, número de cifras decimales a mostrar, color de la fuente, tamaño, etc., así como se puede mostrar o no el grid.
El campo de la visualización <em>Axis category II</em> permite replicar la gráfica desagregando los datos según una dimensión adicional (lo que frecuentemente se denomina <em>faces</em>). Así, si llevamos el campo <em>Gender</em> (que contiene el género de los clientes) a este campo, obtenemos el siguiente resultado:
En fin, montones de opciones disponibles para analizar la distribución de nuestros datos. Visualización muy recomendada.
', 'es') (Line: 118)
Drupal\filter\Element\ProcessedText::preRenderText(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 88)
__TwigTemplate_a7d6005c89ae729617b9a0c2bccb1776->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 46)
__TwigTemplate_804f7948456cfe20e11a34c43439c7c2->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array, Array) (Line: 43)
__TwigTemplate_bd990293b89f3b78c69fe0ee2f7828b5->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/contrib/classy/templates/field/field--text-with-summary.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('field', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array) (Line: 446)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array) (Line: 479)
Drupal\Core\Template\TwigExtension->escapeFilter(Object, Array, 'html', NULL, 1) (Line: 74)
__TwigTemplate_94047fbdba6937b76a4479dfa1763452->doDisplay(Array, Array) (Line: 405)
Twig\Template->displayWithErrorHandling(Array, Array) (Line: 378)
Twig\Template->display(Array) (Line: 390)
Twig\Template->render(Array) (Line: 55)
twig_render_template('themes/custom/yg_aesthetic/templates/node.html.twig', Array) (Line: 384)
Drupal\Core\Theme\ThemeManager->render('node', Array) (Line: 433)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 242)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 235)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Return type of Drupal\google_analytics\Component\Render\GoogleAnalyticsJavaScriptSnippet::jsonSerialize() should either be compatible with JsonSerializable::jsonSerialize(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 10 of modules/contrib/google_analytics/src/Component/Render/GoogleAnalyticsJavaScriptSnippet.php).
include('/var/www/vhosts/interactivechaos.ovh/httpdocs/modules/contrib/google_analytics/src/Component/Render/GoogleAnalyticsJavaScriptSnippet.php') (Line: 578)
Composer\Autoload\ClassLoader::Composer\Autoload\{closure}('/var/www/vhosts/interactivechaos.ovh/httpdocs/modules/contrib/google_analytics/src/Component/Render/GoogleAnalyticsJavaScriptSnippet.php') (Line: 432)
Composer\Autoload\ClassLoader->loadClass('Drupal\google_analytics\Component\Render\GoogleAnalyticsJavaScriptSnippet') (Line: 372)
google_analytics_page_attachments(Array) (Line: 313)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}(Object, 'google_analytics') (Line: 405)
Drupal\Core\Extension\ModuleHandler->invokeAllWith('page_attachments', Object) (Line: 310)
Drupal\Core\Render\MainContent\HtmlRenderer->invokePageAttachmentHooks(Array) (Line: 288)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Use of "static" in callables is deprecated in Drupal\user\Entity\Role::postLoad() (line 172 of core/modules/user/src/Entity/Role.php).
Drupal\user\Entity\Role::postLoad(Object, Array) (Line: 423)
Drupal\Core\Entity\EntityStorageBase->postLoad(Array) (Line: 353)
Drupal\Core\Entity\EntityStorageBase->loadMultiple() (Line: 126)
eu_cookie_compliance_page_attachments(Array) (Line: 313)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}(Object, 'eu_cookie_compliance') (Line: 405)
Drupal\Core\Extension\ModuleHandler->invokeAllWith('page_attachments', Object) (Line: 310)
Drupal\Core\Render\MainContent\HtmlRenderer->invokePageAttachmentHooks(Array) (Line: 288)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 132)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object)
call_user_func(Array, Object, 'kernel.view', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.view') (Line: 174)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\views\ManyToOneHelper::$handler is deprecated in Drupal\views\ManyToOneHelper->__construct() (line 24 of core/modules/views/src/ManyToOneHelper.php).
Drupal\views\ManyToOneHelper->__construct(Object) (Line: 51)
Drupal\views\Plugin\views\filter\ManyToOne->defineOptions() (Line: 117)
Drupal\taxonomy\Plugin\views\filter\TaxonomyIndexTid->defineOptions() (Line: 141)
Drupal\views\Plugin\views\PluginBase->init(Object, Object, Array) (Line: 104)
Drupal\views\Plugin\views\HandlerBase->init(Object, Object, Array) (Line: 95)
Drupal\views\Plugin\views\filter\FilterPluginBase->init(Object, Object, Array) (Line: 44)
Drupal\views\Plugin\views\filter\InOperator->init(Object, Object, Array) (Line: 36)
Drupal\views\Plugin\views\filter\ManyToOne->init(Object, Object, Array) (Line: 98)
Drupal\taxonomy\Plugin\views\filter\TaxonomyIndexTid->init(Object, Object, Array) (Line: 894)
Drupal\views\Plugin\views\display\DisplayPluginBase->getHandlers('filter') (Line: 1045)
Drupal\views\ViewExecutable->_initHandler('filter', Array) (Line: 903)
Drupal\views\ViewExecutable->initHandlers() (Line: 2633)
Drupal\views\Plugin\views\display\DisplayPluginBase->viewExposedFormBlocks() (Line: 35)
Drupal\views\Plugin\Block\ViewsExposedFilterBlock->build() (Line: 171)
Drupal\block\BlockViewBuilder::preRender(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, 1) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, 1) (Line: 160)
Drupal\Core\Render\Renderer->Drupal\Core\Render\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 159)
Drupal\Core\Render\Renderer->renderPlain(Array) (Line: 175)
Drupal\Core\Render\Renderer->renderPlaceholder('', Array) (Line: 665)
Drupal\Core\Render\Renderer->replacePlaceholders(Array) (Line: 550)
Drupal\Core\Render\Renderer->doRender(Array, 1) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, 1) (Line: 148)
Drupal\Core\Render\Renderer->Drupal\Core\Render\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 147)
Drupal\Core\Render\Renderer->renderRoot(Array) (Line: 279)
Drupal\Core\Render\HtmlResponseAttachmentsProcessor->renderPlaceholders(Object) (Line: 71)
Drupal\big_pipe\Render\BigPipeResponseAttachmentsProcessor->processAttachments(Object) (Line: 45)
Drupal\Core\EventSubscriber\HtmlResponseSubscriber->onRespond(Object, 'kernel.response', Object)
call_user_func(Array, Object, 'kernel.response', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.response') (Line: 202)
Symfony\Component\HttpKernel\HttpKernel->filterResponse(Object, Object, 1) (Line: 190)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\views\ManyToOneHelper::$handler is deprecated in Drupal\views\ManyToOneHelper->__construct() (line 24 of core/modules/views/src/ManyToOneHelper.php).
Drupal\views\ManyToOneHelper->__construct(Object) (Line: 51)
Drupal\views\Plugin\views\filter\ManyToOne->defineOptions() (Line: 117)
Drupal\taxonomy\Plugin\views\filter\TaxonomyIndexTid->defineOptions() (Line: 228)
Drupal\views\Plugin\views\PluginBase->unpackOptions(Array, Array) (Line: 144)
Drupal\views\Plugin\views\PluginBase->init(Object, Object, Array) (Line: 104)
Drupal\views\Plugin\views\HandlerBase->init(Object, Object, Array) (Line: 95)
Drupal\views\Plugin\views\filter\FilterPluginBase->init(Object, Object, Array) (Line: 44)
Drupal\views\Plugin\views\filter\InOperator->init(Object, Object, Array) (Line: 36)
Drupal\views\Plugin\views\filter\ManyToOne->init(Object, Object, Array) (Line: 98)
Drupal\taxonomy\Plugin\views\filter\TaxonomyIndexTid->init(Object, Object, Array) (Line: 894)
Drupal\views\Plugin\views\display\DisplayPluginBase->getHandlers('filter') (Line: 1045)
Drupal\views\ViewExecutable->_initHandler('filter', Array) (Line: 903)
Drupal\views\ViewExecutable->initHandlers() (Line: 2633)
Drupal\views\Plugin\views\display\DisplayPluginBase->viewExposedFormBlocks() (Line: 35)
Drupal\views\Plugin\Block\ViewsExposedFilterBlock->build() (Line: 171)
Drupal\block\BlockViewBuilder::preRender(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, 1) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, 1) (Line: 160)
Drupal\Core\Render\Renderer->Drupal\Core\Render\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 159)
Drupal\Core\Render\Renderer->renderPlain(Array) (Line: 175)
Drupal\Core\Render\Renderer->renderPlaceholder('', Array) (Line: 665)
Drupal\Core\Render\Renderer->replacePlaceholders(Array) (Line: 550)
Drupal\Core\Render\Renderer->doRender(Array, 1) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, 1) (Line: 148)
Drupal\Core\Render\Renderer->Drupal\Core\Render\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 147)
Drupal\Core\Render\Renderer->renderRoot(Array) (Line: 279)
Drupal\Core\Render\HtmlResponseAttachmentsProcessor->renderPlaceholders(Object) (Line: 71)
Drupal\big_pipe\Render\BigPipeResponseAttachmentsProcessor->processAttachments(Object) (Line: 45)
Drupal\Core\EventSubscriber\HtmlResponseSubscriber->onRespond(Object, 'kernel.response', Object)
call_user_func(Array, Object, 'kernel.response', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.response') (Line: 202)
Symfony\Component\HttpKernel\HttpKernel->filterResponse(Object, Object, 1) (Line: 190)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\views\ManyToOneHelper::$handler is deprecated in Drupal\views\ManyToOneHelper->__construct() (line 24 of core/modules/views/src/ManyToOneHelper.php).
Drupal\views\ManyToOneHelper->__construct(Object) (Line: 51)
Drupal\views\Plugin\views\filter\ManyToOne->defineOptions() (Line: 117)
Drupal\taxonomy\Plugin\views\filter\TaxonomyIndexTid->defineOptions() (Line: 228)
Drupal\views\Plugin\views\PluginBase->unpackOptions(Array, Array) (Line: 110)
Drupal\views\Plugin\views\HandlerBase->init(Object, Object, Array) (Line: 95)
Drupal\views\Plugin\views\filter\FilterPluginBase->init(Object, Object, Array) (Line: 44)
Drupal\views\Plugin\views\filter\InOperator->init(Object, Object, Array) (Line: 36)
Drupal\views\Plugin\views\filter\ManyToOne->init(Object, Object, Array) (Line: 98)
Drupal\taxonomy\Plugin\views\filter\TaxonomyIndexTid->init(Object, Object, Array) (Line: 894)
Drupal\views\Plugin\views\display\DisplayPluginBase->getHandlers('filter') (Line: 1045)
Drupal\views\ViewExecutable->_initHandler('filter', Array) (Line: 903)
Drupal\views\ViewExecutable->initHandlers() (Line: 2633)
Drupal\views\Plugin\views\display\DisplayPluginBase->viewExposedFormBlocks() (Line: 35)
Drupal\views\Plugin\Block\ViewsExposedFilterBlock->build() (Line: 171)
Drupal\block\BlockViewBuilder::preRender(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, 1) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, 1) (Line: 160)
Drupal\Core\Render\Renderer->Drupal\Core\Render\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 159)
Drupal\Core\Render\Renderer->renderPlain(Array) (Line: 175)
Drupal\Core\Render\Renderer->renderPlaceholder('', Array) (Line: 665)
Drupal\Core\Render\Renderer->replacePlaceholders(Array) (Line: 550)
Drupal\Core\Render\Renderer->doRender(Array, 1) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, 1) (Line: 148)
Drupal\Core\Render\Renderer->Drupal\Core\Render\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 147)
Drupal\Core\Render\Renderer->renderRoot(Array) (Line: 279)
Drupal\Core\Render\HtmlResponseAttachmentsProcessor->renderPlaceholders(Object) (Line: 71)
Drupal\big_pipe\Render\BigPipeResponseAttachmentsProcessor->processAttachments(Object) (Line: 45)
Drupal\Core\EventSubscriber\HtmlResponseSubscriber->onRespond(Object, 'kernel.response', Object)
call_user_func(Array, Object, 'kernel.response', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.response') (Line: 202)
Symfony\Component\HttpKernel\HttpKernel->filterResponse(Object, Object, 1) (Line: 190)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\views\ManyToOneHelper::$handler is deprecated in Drupal\views\ManyToOneHelper->__construct() (line 24 of core/modules/views/src/ManyToOneHelper.php).
Drupal\views\ManyToOneHelper->__construct(Object) (Line: 38)
Drupal\views\Plugin\views\filter\ManyToOne->init(Object, Object, Array) (Line: 98)
Drupal\taxonomy\Plugin\views\filter\TaxonomyIndexTid->init(Object, Object, Array) (Line: 894)
Drupal\views\Plugin\views\display\DisplayPluginBase->getHandlers('filter') (Line: 1045)
Drupal\views\ViewExecutable->_initHandler('filter', Array) (Line: 903)
Drupal\views\ViewExecutable->initHandlers() (Line: 2633)
Drupal\views\Plugin\views\display\DisplayPluginBase->viewExposedFormBlocks() (Line: 35)
Drupal\views\Plugin\Block\ViewsExposedFilterBlock->build() (Line: 171)
Drupal\block\BlockViewBuilder::preRender(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, 1) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, 1) (Line: 160)
Drupal\Core\Render\Renderer->Drupal\Core\Render\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 159)
Drupal\Core\Render\Renderer->renderPlain(Array) (Line: 175)
Drupal\Core\Render\Renderer->renderPlaceholder('', Array) (Line: 665)
Drupal\Core\Render\Renderer->replacePlaceholders(Array) (Line: 550)
Drupal\Core\Render\Renderer->doRender(Array, 1) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, 1) (Line: 148)
Drupal\Core\Render\Renderer->Drupal\Core\Render\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 147)
Drupal\Core\Render\Renderer->renderRoot(Array) (Line: 279)
Drupal\Core\Render\HtmlResponseAttachmentsProcessor->renderPlaceholders(Object) (Line: 71)
Drupal\big_pipe\Render\BigPipeResponseAttachmentsProcessor->processAttachments(Object) (Line: 45)
Drupal\Core\EventSubscriber\HtmlResponseSubscriber->onRespond(Object, 'kernel.response', Object)
call_user_func(Array, Object, 'kernel.response', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.response') (Line: 202)
Symfony\Component\HttpKernel\HttpKernel->filterResponse(Object, Object, 1) (Line: 190)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\views\ManyToOneHelper::$handler is deprecated in Drupal\views\ManyToOneHelper->__construct() (line 24 of core/modules/views/src/ManyToOneHelper.php).
Drupal\views\ManyToOneHelper->__construct(Object) (Line: 51)
Drupal\views\Plugin\views\filter\ManyToOne->defineOptions() (Line: 117)
Drupal\taxonomy\Plugin\views\filter\TaxonomyIndexTid->defineOptions() (Line: 141)
Drupal\views\Plugin\views\PluginBase->init(Object, Object, Array) (Line: 104)
Drupal\views\Plugin\views\HandlerBase->init(Object, Object, Array) (Line: 95)
Drupal\views\Plugin\views\filter\FilterPluginBase->init(Object, Object, Array) (Line: 44)
Drupal\views\Plugin\views\filter\InOperator->init(Object, Object, Array) (Line: 36)
Drupal\views\Plugin\views\filter\ManyToOne->init(Object, Object, Array) (Line: 98)
Drupal\taxonomy\Plugin\views\filter\TaxonomyIndexTid->init(Object, Object, Array) (Line: 894)
Drupal\views\Plugin\views\display\DisplayPluginBase->getHandlers('filter') (Line: 1045)
Drupal\views\ViewExecutable->_initHandler('filter', Array) (Line: 903)
Drupal\views\ViewExecutable->initHandlers() (Line: 2633)
Drupal\views\Plugin\views\display\DisplayPluginBase->viewExposedFormBlocks() (Line: 35)
Drupal\views\Plugin\Block\ViewsExposedFilterBlock->build() (Line: 171)
Drupal\block\BlockViewBuilder::preRender(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, 1) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, 1) (Line: 160)
Drupal\Core\Render\Renderer->Drupal\Core\Render\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 159)
Drupal\Core\Render\Renderer->renderPlain(Array) (Line: 175)
Drupal\Core\Render\Renderer->renderPlaceholder('', Array) (Line: 665)
Drupal\Core\Render\Renderer->replacePlaceholders(Array) (Line: 550)
Drupal\Core\Render\Renderer->doRender(Array, 1) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, 1) (Line: 148)
Drupal\Core\Render\Renderer->Drupal\Core\Render\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 147)
Drupal\Core\Render\Renderer->renderRoot(Array) (Line: 279)
Drupal\Core\Render\HtmlResponseAttachmentsProcessor->renderPlaceholders(Object) (Line: 71)
Drupal\big_pipe\Render\BigPipeResponseAttachmentsProcessor->processAttachments(Object) (Line: 45)
Drupal\Core\EventSubscriber\HtmlResponseSubscriber->onRespond(Object, 'kernel.response', Object)
call_user_func(Array, Object, 'kernel.response', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.response') (Line: 202)
Symfony\Component\HttpKernel\HttpKernel->filterResponse(Object, Object, 1) (Line: 190)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\views\ManyToOneHelper::$handler is deprecated in Drupal\views\ManyToOneHelper->__construct() (line 24 of core/modules/views/src/ManyToOneHelper.php).
Drupal\views\ManyToOneHelper->__construct(Object) (Line: 51)
Drupal\views\Plugin\views\filter\ManyToOne->defineOptions() (Line: 117)
Drupal\taxonomy\Plugin\views\filter\TaxonomyIndexTid->defineOptions() (Line: 228)
Drupal\views\Plugin\views\PluginBase->unpackOptions(Array, Array) (Line: 144)
Drupal\views\Plugin\views\PluginBase->init(Object, Object, Array) (Line: 104)
Drupal\views\Plugin\views\HandlerBase->init(Object, Object, Array) (Line: 95)
Drupal\views\Plugin\views\filter\FilterPluginBase->init(Object, Object, Array) (Line: 44)
Drupal\views\Plugin\views\filter\InOperator->init(Object, Object, Array) (Line: 36)
Drupal\views\Plugin\views\filter\ManyToOne->init(Object, Object, Array) (Line: 98)
Drupal\taxonomy\Plugin\views\filter\TaxonomyIndexTid->init(Object, Object, Array) (Line: 894)
Drupal\views\Plugin\views\display\DisplayPluginBase->getHandlers('filter') (Line: 1045)
Drupal\views\ViewExecutable->_initHandler('filter', Array) (Line: 903)
Drupal\views\ViewExecutable->initHandlers() (Line: 2633)
Drupal\views\Plugin\views\display\DisplayPluginBase->viewExposedFormBlocks() (Line: 35)
Drupal\views\Plugin\Block\ViewsExposedFilterBlock->build() (Line: 171)
Drupal\block\BlockViewBuilder::preRender(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, 1) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, 1) (Line: 160)
Drupal\Core\Render\Renderer->Drupal\Core\Render\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 159)
Drupal\Core\Render\Renderer->renderPlain(Array) (Line: 175)
Drupal\Core\Render\Renderer->renderPlaceholder('', Array) (Line: 665)
Drupal\Core\Render\Renderer->replacePlaceholders(Array) (Line: 550)
Drupal\Core\Render\Renderer->doRender(Array, 1) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, 1) (Line: 148)
Drupal\Core\Render\Renderer->Drupal\Core\Render\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 147)
Drupal\Core\Render\Renderer->renderRoot(Array) (Line: 279)
Drupal\Core\Render\HtmlResponseAttachmentsProcessor->renderPlaceholders(Object) (Line: 71)
Drupal\big_pipe\Render\BigPipeResponseAttachmentsProcessor->processAttachments(Object) (Line: 45)
Drupal\Core\EventSubscriber\HtmlResponseSubscriber->onRespond(Object, 'kernel.response', Object)
call_user_func(Array, Object, 'kernel.response', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.response') (Line: 202)
Symfony\Component\HttpKernel\HttpKernel->filterResponse(Object, Object, 1) (Line: 190)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\views\ManyToOneHelper::$handler is deprecated in Drupal\views\ManyToOneHelper->__construct() (line 24 of core/modules/views/src/ManyToOneHelper.php).
Drupal\views\ManyToOneHelper->__construct(Object) (Line: 51)
Drupal\views\Plugin\views\filter\ManyToOne->defineOptions() (Line: 117)
Drupal\taxonomy\Plugin\views\filter\TaxonomyIndexTid->defineOptions() (Line: 228)
Drupal\views\Plugin\views\PluginBase->unpackOptions(Array, Array) (Line: 110)
Drupal\views\Plugin\views\HandlerBase->init(Object, Object, Array) (Line: 95)
Drupal\views\Plugin\views\filter\FilterPluginBase->init(Object, Object, Array) (Line: 44)
Drupal\views\Plugin\views\filter\InOperator->init(Object, Object, Array) (Line: 36)
Drupal\views\Plugin\views\filter\ManyToOne->init(Object, Object, Array) (Line: 98)
Drupal\taxonomy\Plugin\views\filter\TaxonomyIndexTid->init(Object, Object, Array) (Line: 894)
Drupal\views\Plugin\views\display\DisplayPluginBase->getHandlers('filter') (Line: 1045)
Drupal\views\ViewExecutable->_initHandler('filter', Array) (Line: 903)
Drupal\views\ViewExecutable->initHandlers() (Line: 2633)
Drupal\views\Plugin\views\display\DisplayPluginBase->viewExposedFormBlocks() (Line: 35)
Drupal\views\Plugin\Block\ViewsExposedFilterBlock->build() (Line: 171)
Drupal\block\BlockViewBuilder::preRender(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, 1) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, 1) (Line: 160)
Drupal\Core\Render\Renderer->Drupal\Core\Render\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 159)
Drupal\Core\Render\Renderer->renderPlain(Array) (Line: 175)
Drupal\Core\Render\Renderer->renderPlaceholder('', Array) (Line: 665)
Drupal\Core\Render\Renderer->replacePlaceholders(Array) (Line: 550)
Drupal\Core\Render\Renderer->doRender(Array, 1) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, 1) (Line: 148)
Drupal\Core\Render\Renderer->Drupal\Core\Render\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 147)
Drupal\Core\Render\Renderer->renderRoot(Array) (Line: 279)
Drupal\Core\Render\HtmlResponseAttachmentsProcessor->renderPlaceholders(Object) (Line: 71)
Drupal\big_pipe\Render\BigPipeResponseAttachmentsProcessor->processAttachments(Object) (Line: 45)
Drupal\Core\EventSubscriber\HtmlResponseSubscriber->onRespond(Object, 'kernel.response', Object)
call_user_func(Array, Object, 'kernel.response', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.response') (Line: 202)
Symfony\Component\HttpKernel\HttpKernel->filterResponse(Object, Object, 1) (Line: 190)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\views\ManyToOneHelper::$handler is deprecated in Drupal\views\ManyToOneHelper->__construct() (line 24 of core/modules/views/src/ManyToOneHelper.php).
Drupal\views\ManyToOneHelper->__construct(Object) (Line: 38)
Drupal\views\Plugin\views\filter\ManyToOne->init(Object, Object, Array) (Line: 98)
Drupal\taxonomy\Plugin\views\filter\TaxonomyIndexTid->init(Object, Object, Array) (Line: 894)
Drupal\views\Plugin\views\display\DisplayPluginBase->getHandlers('filter') (Line: 1045)
Drupal\views\ViewExecutable->_initHandler('filter', Array) (Line: 903)
Drupal\views\ViewExecutable->initHandlers() (Line: 2633)
Drupal\views\Plugin\views\display\DisplayPluginBase->viewExposedFormBlocks() (Line: 35)
Drupal\views\Plugin\Block\ViewsExposedFilterBlock->build() (Line: 171)
Drupal\block\BlockViewBuilder::preRender(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, 1) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, 1) (Line: 160)
Drupal\Core\Render\Renderer->Drupal\Core\Render\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 159)
Drupal\Core\Render\Renderer->renderPlain(Array) (Line: 175)
Drupal\Core\Render\Renderer->renderPlaceholder('', Array) (Line: 665)
Drupal\Core\Render\Renderer->replacePlaceholders(Array) (Line: 550)
Drupal\Core\Render\Renderer->doRender(Array, 1) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, 1) (Line: 148)
Drupal\Core\Render\Renderer->Drupal\Core\Render\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 147)
Drupal\Core\Render\Renderer->renderRoot(Array) (Line: 279)
Drupal\Core\Render\HtmlResponseAttachmentsProcessor->renderPlaceholders(Object) (Line: 71)
Drupal\big_pipe\Render\BigPipeResponseAttachmentsProcessor->processAttachments(Object) (Line: 45)
Drupal\Core\EventSubscriber\HtmlResponseSubscriber->onRespond(Object, 'kernel.response', Object)
call_user_func(Array, Object, 'kernel.response', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.response') (Line: 202)
Symfony\Component\HttpKernel\HttpKernel->filterResponse(Object, Object, 1) (Line: 190)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterMetaData is deprecated in Drupal\Core\Database\Query\Select->addMetaData() (line 178 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addMetaData('entity_type', 'taxonomy_term') (Line: 115)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 228)
Drupal\taxonomy\Plugin\views\filter\TaxonomyIndexTid->valueForm(Array, Object) (Line: 941)
Drupal\views\Plugin\views\filter\FilterPluginBase->buildExposedForm(Array, Object) (Line: 111)
Drupal\views\Form\ViewsExposedForm->buildForm(Array, Object)
call_user_func_array(Array, Array) (Line: 534)
Drupal\Core\Form\FormBuilder->retrieveForm('views_exposed_form', Object) (Line: 281)
Drupal\Core\Form\FormBuilder->buildForm('\Drupal\views\Form\ViewsExposedForm', Object) (Line: 134)
Drupal\views\Plugin\views\exposed_form\ExposedFormPluginBase->renderExposedForm(1) (Line: 2638)
Drupal\views\Plugin\views\display\DisplayPluginBase->viewExposedFormBlocks() (Line: 35)
Drupal\views\Plugin\Block\ViewsExposedFilterBlock->build() (Line: 171)
Drupal\block\BlockViewBuilder::preRender(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, 1) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, 1) (Line: 160)
Drupal\Core\Render\Renderer->Drupal\Core\Render\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 159)
Drupal\Core\Render\Renderer->renderPlain(Array) (Line: 175)
Drupal\Core\Render\Renderer->renderPlaceholder('', Array) (Line: 665)
Drupal\Core\Render\Renderer->replacePlaceholders(Array) (Line: 550)
Drupal\Core\Render\Renderer->doRender(Array, 1) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, 1) (Line: 148)
Drupal\Core\Render\Renderer->Drupal\Core\Render\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 147)
Drupal\Core\Render\Renderer->renderRoot(Array) (Line: 279)
Drupal\Core\Render\HtmlResponseAttachmentsProcessor->renderPlaceholders(Object) (Line: 71)
Drupal\big_pipe\Render\BigPipeResponseAttachmentsProcessor->processAttachments(Object) (Line: 45)
Drupal\Core\EventSubscriber\HtmlResponseSubscriber->onRespond(Object, 'kernel.response', Object)
call_user_func(Array, Object, 'kernel.response', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.response') (Line: 202)
Symfony\Component\HttpKernel\HttpKernel->filterResponse(Object, Object, 1) (Line: 190)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterTags is deprecated in Drupal\Core\Database\Query\Select->addTag() (line 149 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addTag('taxonomy_term_access') (Line: 145)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 228)
Drupal\taxonomy\Plugin\views\filter\TaxonomyIndexTid->valueForm(Array, Object) (Line: 941)
Drupal\views\Plugin\views\filter\FilterPluginBase->buildExposedForm(Array, Object) (Line: 111)
Drupal\views\Form\ViewsExposedForm->buildForm(Array, Object)
call_user_func_array(Array, Array) (Line: 534)
Drupal\Core\Form\FormBuilder->retrieveForm('views_exposed_form', Object) (Line: 281)
Drupal\Core\Form\FormBuilder->buildForm('\Drupal\views\Form\ViewsExposedForm', Object) (Line: 134)
Drupal\views\Plugin\views\exposed_form\ExposedFormPluginBase->renderExposedForm(1) (Line: 2638)
Drupal\views\Plugin\views\display\DisplayPluginBase->viewExposedFormBlocks() (Line: 35)
Drupal\views\Plugin\Block\ViewsExposedFilterBlock->build() (Line: 171)
Drupal\block\BlockViewBuilder::preRender(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, 1) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, 1) (Line: 160)
Drupal\Core\Render\Renderer->Drupal\Core\Render\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 159)
Drupal\Core\Render\Renderer->renderPlain(Array) (Line: 175)
Drupal\Core\Render\Renderer->renderPlaceholder('', Array) (Line: 665)
Drupal\Core\Render\Renderer->replacePlaceholders(Array) (Line: 550)
Drupal\Core\Render\Renderer->doRender(Array, 1) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, 1) (Line: 148)
Drupal\Core\Render\Renderer->Drupal\Core\Render\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 147)
Drupal\Core\Render\Renderer->renderRoot(Array) (Line: 279)
Drupal\Core\Render\HtmlResponseAttachmentsProcessor->renderPlaceholders(Object) (Line: 71)
Drupal\big_pipe\Render\BigPipeResponseAttachmentsProcessor->processAttachments(Object) (Line: 45)
Drupal\Core\EventSubscriber\HtmlResponseSubscriber->onRespond(Object, 'kernel.response', Object)
call_user_func(Array, Object, 'kernel.response', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.response') (Line: 202)
Symfony\Component\HttpKernel\HttpKernel->filterResponse(Object, Object, 1) (Line: 190)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterMetaData is deprecated in Drupal\Core\Database\Query\Select->addMetaData() (line 178 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addMetaData('entity_type', 'taxonomy_term') (Line: 115)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 228)
Drupal\taxonomy\Plugin\views\filter\TaxonomyIndexTid->valueForm(Array, Object) (Line: 941)
Drupal\views\Plugin\views\filter\FilterPluginBase->buildExposedForm(Array, Object) (Line: 111)
Drupal\views\Form\ViewsExposedForm->buildForm(Array, Object)
call_user_func_array(Array, Array) (Line: 534)
Drupal\Core\Form\FormBuilder->retrieveForm('views_exposed_form', Object) (Line: 281)
Drupal\Core\Form\FormBuilder->buildForm('\Drupal\views\Form\ViewsExposedForm', Object) (Line: 134)
Drupal\views\Plugin\views\exposed_form\ExposedFormPluginBase->renderExposedForm(1) (Line: 2638)
Drupal\views\Plugin\views\display\DisplayPluginBase->viewExposedFormBlocks() (Line: 35)
Drupal\views\Plugin\Block\ViewsExposedFilterBlock->build() (Line: 171)
Drupal\block\BlockViewBuilder::preRender(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, 1) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, 1) (Line: 160)
Drupal\Core\Render\Renderer->Drupal\Core\Render\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 159)
Drupal\Core\Render\Renderer->renderPlain(Array) (Line: 175)
Drupal\Core\Render\Renderer->renderPlaceholder('', Array) (Line: 665)
Drupal\Core\Render\Renderer->replacePlaceholders(Array) (Line: 550)
Drupal\Core\Render\Renderer->doRender(Array, 1) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, 1) (Line: 148)
Drupal\Core\Render\Renderer->Drupal\Core\Render\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 147)
Drupal\Core\Render\Renderer->renderRoot(Array) (Line: 279)
Drupal\Core\Render\HtmlResponseAttachmentsProcessor->renderPlaceholders(Object) (Line: 71)
Drupal\big_pipe\Render\BigPipeResponseAttachmentsProcessor->processAttachments(Object) (Line: 45)
Drupal\Core\EventSubscriber\HtmlResponseSubscriber->onRespond(Object, 'kernel.response', Object)
call_user_func(Array, Object, 'kernel.response', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.response') (Line: 202)
Symfony\Component\HttpKernel\HttpKernel->filterResponse(Object, Object, 1) (Line: 190)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
- Deprecated function: Creation of dynamic property Drupal\mysql\Driver\Database\mysql\Select::$alterTags is deprecated in Drupal\Core\Database\Query\Select->addTag() (line 149 of core/lib/Drupal/Core/Database/Query/Select.php).
Drupal\Core\Database\Query\Select->addTag('taxonomy_term_access') (Line: 145)
Drupal\Core\Entity\Query\Sql\Query->prepare() (Line: 80)
Drupal\Core\Entity\Query\Sql\Query->execute() (Line: 228)
Drupal\taxonomy\Plugin\views\filter\TaxonomyIndexTid->valueForm(Array, Object) (Line: 941)
Drupal\views\Plugin\views\filter\FilterPluginBase->buildExposedForm(Array, Object) (Line: 111)
Drupal\views\Form\ViewsExposedForm->buildForm(Array, Object)
call_user_func_array(Array, Array) (Line: 534)
Drupal\Core\Form\FormBuilder->retrieveForm('views_exposed_form', Object) (Line: 281)
Drupal\Core\Form\FormBuilder->buildForm('\Drupal\views\Form\ViewsExposedForm', Object) (Line: 134)
Drupal\views\Plugin\views\exposed_form\ExposedFormPluginBase->renderExposedForm(1) (Line: 2638)
Drupal\views\Plugin\views\display\DisplayPluginBase->viewExposedFormBlocks() (Line: 35)
Drupal\views\Plugin\Block\ViewsExposedFilterBlock->build() (Line: 171)
Drupal\block\BlockViewBuilder::preRender(Array)
call_user_func_array(Array, Array) (Line: 101)
Drupal\Core\Render\Renderer->doTrustedCallback(Array, Array, 'Render #pre_render callbacks must be methods of a class that implements \Drupal\Core\Security\TrustedCallbackInterface or be an anonymous function. The callback was %s. See https://www.drupal.org/node/2966725', 'exception', 'Drupal\Core\Render\Element\RenderCallbackInterface') (Line: 788)
Drupal\Core\Render\Renderer->doCallback('#pre_render', Array, Array) (Line: 374)
Drupal\Core\Render\Renderer->doRender(Array, 1) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, 1) (Line: 160)
Drupal\Core\Render\Renderer->Drupal\Core\Render\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 159)
Drupal\Core\Render\Renderer->renderPlain(Array) (Line: 175)
Drupal\Core\Render\Renderer->renderPlaceholder('', Array) (Line: 665)
Drupal\Core\Render\Renderer->replacePlaceholders(Array) (Line: 550)
Drupal\Core\Render\Renderer->doRender(Array, 1) (Line: 204)
Drupal\Core\Render\Renderer->render(Array, 1) (Line: 148)
Drupal\Core\Render\Renderer->Drupal\Core\Render\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 147)
Drupal\Core\Render\Renderer->renderRoot(Array) (Line: 279)
Drupal\Core\Render\HtmlResponseAttachmentsProcessor->renderPlaceholders(Object) (Line: 71)
Drupal\big_pipe\Render\BigPipeResponseAttachmentsProcessor->processAttachments(Object) (Line: 45)
Drupal\Core\EventSubscriber\HtmlResponseSubscriber->onRespond(Object, 'kernel.response', Object)
call_user_func(Array, Object, 'kernel.response', Object) (Line: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch(Object, 'kernel.response') (Line: 202)
Symfony\Component\HttpKernel\HttpKernel->filterResponse(Object, Object, 1) (Line: 190)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 81)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 58)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 191)
Drupal\page_cache\StackMiddleware\PageCache->fetch(Object, 1, 1) (Line: 128)
Drupal\page_cache\StackMiddleware\PageCache->lookup(Object, 1, 1) (Line: 82)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 713)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)