# \[XY Chart\] Maximum call stack size exceeded

**URL:** <https://forum.inductiveautomation.com/t/xy-chart-maximum-call-stack-size-exceeded/75696>\
**Category:** Ignition\
**Created:** [June 29, 2023, 10:58am UTC](https://forum.inductiveautomation.com/t/xy-chart-maximum-call-stack-size-exceeded/75696 "2023-06-29T10:58:02Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Marc.Akoto](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/marc.akoto/32/19291_2.png) [@Marc.Akoto](https://forum.inductiveautomation.com/u/Marc.Akoto)\
**Post date:** [June 29, 2023, 10:58am UTC](https://forum.inductiveautomation.com/t/xy-chart-maximum-call-stack-size-exceeded/75696/1 "2023-06-29T10:58:02Z")

</div>

Hi,  
On an XY Chart, I've got :

- an error saying "Maximum call stack size exceeded" :
- no line appearing on the chart

Below is the summary code for my chart.  
And the source dataset : [dataset\_moy\_cintre\_t\_stamp.txt](https://forum.inductiveautomation.com/uploads/short-url/uzTru5MIa4m0BGMEKYVwxmNw9De.txt) (17.5 KB)

Thanks in advance for any advice.

![maximum call stack size exceeded](https://us1.discourse-cdn.com/inductiveautomation/original/3X/e/4/e42168a1cefe9e0eaf24f1c5a895d2161103a921.png)

> **Summary**
>
> [  
> {  
> "type": "ia.chart.xy",  
> "version": 0,  
> "props": {  
> "legend": {  
> "position": "top"  
> },  
> "xAxes": [  
> {  
> "name": "t\_stamp",  
> "label": {  
> "enabled": false,  
> "text": "t\_stamp",  
> "color": ""  
> },  
> "visible": false,  
> "tooltip": {  
> "enabled": true,  
> "text": "",  
> "cornerRadius": 3,  
> "pointerLength": 4,  
> "background": {  
> "color": "",  
> "opacity": 1  
> }  
> },  
> "inversed": true,  
> "render": "value",  
> "category": {  
> "break": {  
> "enabled": false,  
> "startCategory": "",  
> "endCategory": "",  
> "size": 0.05  
> }  
> },  
> "date": {  
> "baseInterval": {  
> "enabled": false,  
> "timeUnit": "hour",  
> "count": 1,  
> "skipEmptyPeriods": false  
> },  
> "range": {  
> "max": "",  
> "min": "",  
> "useStrict": false  
> },  
> "break": {  
> "enabled": false,  
> "startDate": "",  
> "endDate": "",  
> "size": 0.05  
> },  
> "inputFormat": "yyyy-MM-dd kk:mm:ss",  
> "format": "M/d"  
> },  
> "value": {  
> "range": {  
> "max": "",  
> "min": "",  
> "useStrict": false  
> },  
> "logarithmic": false,  
> "break": {  
> "enabled": false,  
> "startValue": 0,  
> "endValue": 100,  
> "size": 0.05  
> },  
> "format": "#,###"  
> },  
> "appearance": {  
> "opposite": false,  
> "inside": true,  
> "labels": {  
> "color": "",  
> "opacity": 1,  
> "rotation": 90,  
> "verticalCenter": "middle",  
> "horizontalCenter": "middle"  
> },  
> "grid": {  
> "color": "",  
> "opacity": 1,  
> "dashArray": "",  
> "minDistance": 10,  
> "position": 0.5  
> },  
> "font": {  
> "size": 12,  
> "weight": 500  
> }  
> }  
> }  
> ],  
> "yAxes": [  
> {  
> "name": "moy\_cintre",  
> "label": {  
> "enabled": false,  
> "text": "Cintre Moyen",  
> "color": ""  
> },  
> "visible": true,  
> "tooltip": {  
> "enabled": true,  
> "text": "",  
> "cornerRadius": 3,  
> "pointerLength": 4,  
> "background": {  
> "color": "",  
> "opacity": 1  
> }  
> },  
> "inversed": false,  
> "render": "value",  
> "category": {  
> "break": {  
> "enabled": false,  
> "startCategory": "",  
> "endCategory": "",  
> "size": 0.05  
> }  
> },  
> "date": {  
> "baseInterval": {  
> "enabled": false,  
> "timeUnit": "hour",  
> "count": 1,  
> "skipEmptyPeriods": false  
> },  
> "range": {  
> "max": "",  
> "min": "",  
> "useStrict": false  
> },  
> "break": {  
> "enabled": false,  
> "startDate": "",  
> "endDate": "",  
> "size": 0.05  
> },  
> "inputFormat": "yyyy-MM-dd kk:mm:ss",  
> "format": "M/d/yyyy HH:mm:ss"  
> },  
> "value": {  
> "range": {  
> "max": 0.5,  
> "min": -0.5,  
> "useStrict": false  
> },  
> "logarithmic": false,  
> "break": {  
> "enabled": false,  
> "startValue": 0,  
> "endValue": 100,  
> "size": 0.05  
> },  
> "format": "#,###.##"  
> },  
> "appearance": {  
> "opposite": false,  
> "inside": false,  
> "labels": {  
> "color": "",  
> "opacity": 1,  
> "rotation": 0,  
> "verticalCenter": "middle",  
> "horizontalCenter": "middle"  
> },  
> "grid": {  
> "color": "",  
> "opacity": 1,  
> "dashArray": "",  
> "minDistance": null,  
> "position": 0.5  
> },  
> "font": {  
> "size": "",  
> "weight": 500  
> }  
> }  
> }  
> ],  
> "series": [  
> {  
> "name": "moy\_cintre",  
> "label": {  
> "text": "Cintre Moyen"  
> },  
> "visible": true,  
> "hiddenInLegend": false,  
> "defaultState": {  
> "visible": true  
> },  
> "data": {  
> "source": "ds0",  
> "x": "t\_stamp",  
> "y": "moy\_cintre"  
> },  
> "xAxis": "t\_stamp",  
> "yAxis": "moy\_cintre",  
> "zIndex": 0,  
> "tooltip": {  
> "enabled": true,  
> "text": "{name}: [bold]{valueY}[/]",  
> "cornerRadius": 3,  
> "pointerLength": 4,  
> "background": {  
> "color": "",  
> "opacity": 1  
> }  
> },  
> "render": "line",  
> "candlestick": {  
> "open": {  
> "x": "",  
> "y": ""  
> },  
> "high": {  
> "x": "",  
> "y": ""  
> },  
> "low": {  
> "x": "",  
> "y": ""  
> },  
> "appearance": {  
> "fill": {  
> "color": "",  
> "opacity": 1  
> },  
> "stroke": {  
> "color": "",  
> "opacity": 1,  
> "width": 1  
> },  
> "stacked": false,  
> "deriveFieldsFromData": {  
> "fill": {  
> "color": "",  
> "opacity": ""  
> },  
> "stroke": {  
> "color": "",  
> "opacity": "",  
> "width": ""  
> }  
> },  
> "heatRules": {  
> "enabled": false,  
> "max": "",  
> "min": "",  
> "dataField": ""  
> }  
> }  
> },  
> "column": {  
> "open": {  
> "x": "",  
> "y": ""  
> },  
> "appearance": {  
> "fill": {  
> "color": "",  
> "opacity": 1  
> },  
> "stroke": {  
> "color": "",  
> "opacity": 1,  
> "width": 1  
> },  
> "stacked": false,  
> "width": null,  
> "height": null,  
> "deriveFieldsFromData": {  
> "fill": {  
> "color": "",  
> "opacity": ""  
> },  
> "stroke": {  
> "color": "",  
> "opacity": "",  
> "width": ""  
> }  
> },  
> "heatRules": {  
> "enabled": false,  
> "max": "",  
> "min": "",  
> "dataField": ""  
> }  
> }  
> },  
> "line": {  
> "open": {  
> "x": "",  
> "y": ""  
> },  
> "appearance": {  
> "connect": false,  
> "tensionX": 1,  
> "tensionY": 1,  
> "minDistance": 0.5,  
> "stroke": {  
> "width": 3,  
> "opacity": 1,  
> "color": "",  
> "dashArray": ""  
> },  
> "fill": {  
> "opacity": 0,  
> "color": ""  
> },  
> "bullets": [  
> {  
> "enabled": false,  
> "render": "circle",  
> "width": 10,  
> "height": 10,  
> "label": {  
> "text": "{value}",  
> "position": {  
> "dx": 0,  
> "dy": 0  
> }  
> },  
> "fill": {  
> "color": "",  
> "opacity": 1  
> },  
> "stroke": {  
> "color": "",  
> "opacity": 1,  
> "width": 1  
> },  
> "rotation": 0,  
> "tooltip": {  
> "enabled": true,  
> "text": "{name}: [bold]{valueY}[/]",  
> "cornerRadius": 3,  
> "pointerLength": 4,  
> "background": {  
> "color": "",  
> "opacity": 1  
> }  
> },  
> "deriveFieldsFromData": {  
> "fill": {  
> "color": "",  
> "opacity": ""  
> },  
> "stroke": {  
> "color": "",  
> "opacity": "",  
> "width": ""  
> },  
> "rotation": ""  
> },  
> "heatRules": {  
> "enabled": false,  
> "max": 100,  
> "min": 2,  
> "dataField": ""  
> }  
> }  
> ]  
> }  
> },  
> "stepLine": {  
> "open": {  
> "x": "",  
> "y": ""  
> },  
> "appearance": {  
> "connect": true,  
> "tensionX": 1,  
> "tensionY": 1,  
> "minDistance": 0.5,  
> "stroke": {  
> "width": 3,  
> "opacity": 1,  
> "color": "",  
> "dashArray": ""  
> },  
> "fill": {  
> "opacity": 0,  
> "color": ""  
> },  
> "bullets": [  
> {  
> "enabled": true,  
> "render": "circle",  
> "width": 10,  
> "height": 10,  
> "label": {  
> "text": "{value}",  
> "position": {  
> "dx": 0,  
> "dy": 0  
> }  
> },  
> "fill": {  
> "color": "",  
> "opacity": 1  
> },  
> "stroke": {  
> "color": "",  
> "opacity": 1,  
> "width": 1  
> },  
> "rotation": 0,  
> "tooltip": {  
> "enabled": true,  
> "text": "{name}: [bold]{valueY}[/]",  
> "cornerRadius": 3,  
> "pointerLength": 4,  
> "background": {  
> "color": "",  
> "opacity": 1  
> }  
> },  
> "deriveFieldsFromData": {  
> "fill": {  
> "color": "",  
> "opacity": ""  
> },  
> "stroke": {  
> "color": "",  
> "opacity": "",  
> "width": ""  
> },  
> "rotation": ""  
> },  
> "heatRules": {  
> "enabled": false,  
> "max": 100,  
> "min": 2,  
> "dataField": ""  
> }  
> }  
> ]  
> }  
> }  
> }  
> ],  
> "dataSources": {}  
> },  
> "meta": {  
> "name": "cintre\_1"  
> },  
> "position": {  
> "x": 1196.43,  
> "y": 324.326,  
> "height": 202,  
> "width": 502.0000000000001  
> },  
> "custom": {},  
> "propConfig": {  
> "props.dataSources.ds0": {  
> "binding": {  
> "type": "property",  
> "config": {  
> "path": "parent.custom.OF\_moyennes"  
> }  
> }  
> }  
> }  
> }  
> ]

---

<div class="post-metadata">

**Author:** ![Marc.Akoto](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/marc.akoto/32/19291_2.png) [@Marc.Akoto](https://forum.inductiveautomation.com/u/Marc.Akoto)\
**Post date:** [June 29, 2023, 11:35pm UTC](https://forum.inductiveautomation.com/t/xy-chart-maximum-call-stack-size-exceeded/75696/2 "2023-06-29T23:35:13Z")

</div>

Eventually I noticed that the source dataset was too big for the XYChart.

This source dataset is the result of Named Query which returned many thousands rows : one event every minute during 3 days. However only 200 of those rows where displayed in the datasource binding on the XYChart.

To reduce the dataset length, in the Named Query, I used 2 solutions which both work :

- only return the events every 5 min, considering that each entry will represent the average data for the last 5 minutes

```auto
(HOUR( date_impr) * 60) + (FLOOR(MINUTE(date_impr) / 5) * 5) as t_stamp

```

- or only keep in "decadrages" table the events which correspond to a minute when something happens on an other table called "headtemp"

```auto
SELECT
<"items to select">
FROM decadrages 
JOIN headtemp ON DATE_FORMAT(decadrages.date_impr, '%Y-%m-%d %H:%i:00')=DATE_FORMAT(headtemp.date_heure, '%Y-%m-%d %H:%i:00')

```
