I have a template with series (legends): North, South, East West, and categories January thruough December. The Indexer getOutput returns the following for the source chart:
[
"title" => "${Annual Sales By Region}"
"data" => array:4 [
0 => array:3 [
"text" => "North"
"cats" => array:12 [
0 => "January"
1 => "February"
2 => "March"
3 => "April"
4 => "May"
5 => "June"
6 => "July"
7 => "August"
8 => "September"
9 => "October"
10 => "November"
11 => "December"
]
"vals" => array:12 [
0 => "4.3"
1 => "2.5"
2 => "3.5"
3 => "4.5"
4 => "4.3"
5 => "2.5"
6 => "3.5"
7 => "4.5"
8 => "4.3"
9 => "2.5"
10 => "3.5"
11 => "4.5"
]
]
1 => array:3 [
"text" => "South"
"cats" => array:12 [
0 => "January"
1 => "February"
2 => "March"
3 => "April"
4 => "May"
5 => "June"
6 => "July"
7 => "August"
8 => "September"
9 => "October"
10 => "November"
11 => "December"
]
"vals" => array:12 [
0 => "2.4"
1 => "4.4000000000000004"
2 => "1.8"
3 => "2.8"
4 => "2.4"
5 => "4.4000000000000004"
6 => "1.8"
7 => "2.8"
8 => "2.4"
9 => "4.4000000000000004"
10 => "1.8"
11 => "2.8"
]
]
2 => array:3 [
"text" => "East"
"cats" => array:12 [
0 => "January"
1 => "February"
2 => "March"
3 => "April"
4 => "May"
5 => "June"
6 => "July"
7 => "August"
8 => "September"
9 => "October"
10 => "November"
11 => "December"
]
"vals" => array:12 [
0 => "2"
1 => "2"
2 => "3"
3 => "5"
4 => "2"
5 => "2"
6 => "3"
7 => "5"
8 => "2"
9 => "2"
10 => "3"
11 => "5"
]
]
3 => array:3 [
"text" => "West"
"cats" => array:12 [
0 => "January"
1 => "February"
2 => "March"
3 => "April"
4 => "May"
5 => "June"
6 => "July"
7 => "August"
8 => "September"
9 => "October"
10 => "November"
11 => "December"
]
"vals" => array:12 [
0 => "3.8"
1 => "4.5"
2 => "7.8"
3 => "9.9"
4 => "3.8"
5 => "4.5"
6 => "7.8"
7 => "9.9"
8 => "3.8"
9 => "4.5"
10 => "7.8"
11 => "9.9"
]
]
]
]
I am passing the following data to setChartData:
array:1 [
0 => array:4 [
"title" => "Annual Sales by Region"
"legends" => array:4 [
0 => "North"
1 => "South"
2 => "East"
3 => "West"
]
"categories" => array:8 [
0 => "January"
1 => "February"
2 => "March"
3 => "April"
4 => "May"
5 => "June"
6 => "July"
7 => "August"
]
"values" => array:8 [
0 => array:4 [
0 => 10.0
1 => 2.4
2 => 2.0
3 => 3.8
]
1 => array:4 [
0 => 10.0
1 => 4.4
2 => 2.0
3 => 4.5
]
2 => array:4 [
0 => 10.0
1 => 1.8
2 => 3.0
3 => 7.8
]
3 => array:4 [
0 => 10.0
1 => 2.8
2 => 5.0
3 => 9.9
]
4 => array:4 [
0 => 10.0
1 => 2.4
2 => 2.0
3 => 3.8
]
5 => array:4 [
0 => 9.5
1 => 4.4
2 => 2.0
3 => 4.5
]
6 => array:4 [
0 => 10.0
1 => 1.8
2 => 3.0
3 => 7.8
]
7 => array:4 [
0 => 9.0
1 => 2.8
2 => 5.0
3 => 9.9
]
]
]
]
The replacement data only has Januaary through August categories but it seems that, although I am explicitly setting the categories, internally, the chart is expecting the data to be the same size.
Is there any way to clean up the chart so it will not expect the same number of categories as in the source template? I can understand if only values can be updated but it seems that if I can provide the categories, the categories I provide should take precedence over the source chart categories.
Any suggestions when I am not certain of the number of categories that will be provided? It is common to have a chart for an entire year but only have data populated up to the current month.
Thanks