Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

The possibility to have an array of series in seriesName of y-axis #4237

Labels
feature-request New feature or request

Comments

@MarieNuellas
Copy link

Summary

It would be cool if we could select multiple series in seriesName so in a multiple y-axis chart we can target the scale of a y-axis from multiple series

API Changes

Include a list of all API changes, additions, subtractions as would be required by your proposal. These APIs should be considered placeholders, so the naming is not as important as getting the concepts correct. If possible you should include some "example" code of usage of your new API.
With my proposal, y-axis options would pass from
seriesName: String
to
seriesNames: String | String[]
or simply
seriesNames: String[]

Intended Use Case

With my proposal, it would permit to add a scale for multiple groups of series, in the exemple there are 2 groups of series, original and compared. it would allow me to make a scale for the two groups
Screenshot 2024-02-14 at 11 27 46

@MarieNuellas MarieNuellas added the feature-request New feature or request label Feb 14, 2024
rosco54 added a commit to rosco54/apexcharts.js that referenced this issue Feb 18, 2024
area/multi-axis-with-seriesname-arrays.xml

- also use this facility to simplify the
specification of series inclusion in stacked charts, especially when
combined with other series.

See stacked-column-with-line.xml
and c.f. stacked-column-with-line-new.xml

The new facility should be backward compatible with the existing
style (both described below to the best of my knowledge), via code
that converts the old data structure to the new one.

The current style of mapping multiple series to a y axis is to
include one yaxis config per series but set each yaxis seriesName to
the same series name and then set show: false on all axes that are not
required.

While not the purpose of apexcharts#4237, it offers a more intuitive alternative
that explicitly configures yaxis elements with the series that will be
referenced to them (seriesName: []). This only requires including the
yaxis elements that will be seen on the chart.

Old way:
  yax:	ser
  0:	0
  1:	1
  2:	1
  3:	1
  4:	1

Axes 0..4 are all scaled and all will be rendered unless the axes are
show: false. If the chart is stacked, it's assumed that series 1..4 are
the contributing series.

New way:
  yax:	ser
  0:	[0]
  1:	[1,2,3,4]

If the chart is stacked (a global chart setting), it must be assumed
that any axis with multiple series is stacked, presumably as separate
sets (not yet implemented).
 

Fix stacked chart y axis scaling: min and max were computed as the
sum of the series min and max, not the min and max od the summed
datapoints in each series.

Note: it is left to the creativity of the user to visually disambiguate
which plot is associated with which Y axis.

Additional checks for undefined elements in CoreUtils.extendArrayProps().

Remove the duplicate outlier in boxplot-scatter.xml.
rosco54 added a commit to rosco54/apexcharts.js that referenced this issue Feb 19, 2024
area/multi-axis-with-seriesname-arrays.xml

- also use this facility to simplify the
specification of series inclusion in stacked charts, especially when
combined with other series.

See stacked-column-with-line.xml
and c.f. stacked-column-with-line-new.xml

The new facility should be backward compatible with the existing
style (both described below to the best of my knowledge), via code
that converts the old data structure to the new one.

The current style of mapping multiple series to a y axis is to
include one yaxis config per series but set each yaxis seriesName to
the same series name and then set show: false on all axes that are not
required.

While not the purpose of apexcharts#4237, it offers a more intuitive alternative
that explicitly configures yaxis elements with the series that will be
referenced to them (seriesName: []). This only requires including the
yaxis elements that will be seen on the chart.

Old way:
  yax:	ser
  0:	0
  1:	1
  2:	1
  3:	1
  4:	1

Axes 0..4 are all scaled and all will be rendered unless the axes are
show: false. If the chart is stacked, it's assumed that series 1..4 are
the contributing series.

New way:
  yax:	ser
  0:	[0]
  1:	[1,2,3,4]

If the chart is stacked (a global chart setting), it must be assumed
that any axis with multiple series is stacked, presumably as separate
sets (not yet implemented).
 

Fix stacked chart y axis scaling: min and max were computed as the
sum of the series min and max, not the min and max od the summed
datapoints in each series.

Note: it is left to the creativity of the user to visually disambiguate
which plot is associated with which Y axis.

Additional checks for undefined elements in CoreUtils.extendArrayProps().

Remove the duplicate outlier in boxplot-scatter.xml.
rosco54 added a commit to rosco54/apexcharts.js that referenced this issue Feb 19, 2024
area/multi-axis-with-seriesname-arrays.xml

- also use this facility to simplify the
specification of series inclusion in stacked charts, especially when
combined with other series.

See stacked-column-with-line.xml
and c.f. stacked-column-with-line-new.xml

The new facility should be backward compatible with the existing
style (both described below to the best of my knowledge), via code
that converts the old data structure to the new one.

The current style of mapping multiple series to a y axis is to
include one yaxis config per series but set each yaxis seriesName to
the same series name and then set show: false on all axes that are not
required.

While not the purpose of apexcharts#4237, it offers a more intuitive alternative
that explicitly configures yaxis elements with the series that will be
referenced to them (seriesName: []). This only requires including the
yaxis elements that will be seen on the chart.

Old way:
  yax:	ser
  0:	0
  1:	1
  2:	1
  3:	1
  4:	1

Axes 0..4 are all scaled and all will be rendered unless the axes are
show: false. If the chart is stacked, it's assumed that series 1..4 are
the contributing series.

New way:
  yax:	ser
  0:	[0]
  1:	[1,2,3,4]

If the chart is stacked (a global chart setting), it must be assumed
that any axis with multiple series is stacked, presumably as separate
sets (not yet implemented).
 

Fix stacked chart y axis scaling: min and max were computed as the
sum of the series min and max, not the min and max od the summed
datapoints in each series.

Note: it is left to the creativity of the user to visually disambiguate
which plot is associated with which Y axis.

Additional checks for undefined elements in CoreUtils.extendArrayProps().

Remove the duplicate outlier in boxplot-scatter.xml.
rosco54 added a commit to rosco54/apexcharts.js that referenced this issue Feb 19, 2024
area/multi-axis-with-seriesname-arrays.xml

- also use this facility to simplify the
specification of series inclusion in stacked charts, especially when
combined with other series.

See stacked-column-with-line.xml
and c.f. stacked-column-with-line-new.xml

The new facility should be backward compatible with the existing
style (both described below to the best of my knowledge), via code
that converts the old data structure to the new one.

The current style of mapping multiple series to a y axis is to
include one yaxis config per series but set each yaxis seriesName to
the same series name and then set show: false on all axes that are not
required.

While not the purpose of apexcharts#4237, it offers a more intuitive alternative
that explicitly configures yaxis elements with the series that will be
referenced to them (seriesName: []). This only requires including the
yaxis elements that will be seen on the chart.

Old way:
  yax:	ser
  0:	0
  1:	1
  2:	1
  3:	1
  4:	1

Axes 0..4 are all scaled and all will be rendered unless the axes are
show: false. If the chart is stacked, it's assumed that series 1..4 are
the contributing series.

New way:
  yax:	ser
  0:	[0]
  1:	[1,2,3,4]

If the chart is stacked (a global chart setting), it must be assumed
that any axis with multiple series is stacked, presumably as separate
sets (not yet implemented).
 

Fix stacked chart y axis scaling: min and max were computed as the
sum of the series min and max, not the min and max od the summed
datapoints in each series.

Note: it is left to the creativity of the user to visually disambiguate
which plot is associated with which Y axis.

Additional checks for undefined elements in CoreUtils.extendArrayProps().

Remove the duplicate outlier in boxplot-scatter.xml.
rosco54 added a commit to rosco54/apexcharts.js that referenced this issue Feb 19, 2024
area/multi-axis-with-seriesname-arrays.xml

- also use this facility to simplify the
specification of series inclusion in stacked charts, especially when
combined with other series.

See stacked-column-with-line.xml
and c.f. stacked-column-with-line-new.xml

The new facility should be backward compatible with the existing
style (both described below to the best of my knowledge), via code
that converts the old data structure to the new one.

The current style of mapping multiple series to a y axis is to
include one yaxis config per series but set each yaxis seriesName to
the same series name and then set show: false on all axes that are not
required.

While not the purpose of apexcharts#4237, it offers a more intuitive alternative
that explicitly configures yaxis elements with the series that will be
referenced to them (seriesName: []). This only requires including the
yaxis elements that will be seen on the chart.

Old way:
  yax:	ser
  0:	0
  1:	1
  2:	1
  3:	1
  4:	1

Axes 0..4 are all scaled and all will be rendered unless the axes are
show: false. If the chart is stacked, it's assumed that series 1..4 are
the contributing series.

New way:
  yax:	ser
  0:	[0]
  1:	[1,2,3,4]

If the chart is stacked (a global chart setting), it must be assumed
that any axis with multiple series is stacked, presumably as separate
sets (not yet implemented).
 

Fix stacked chart y axis scaling: min and max were computed as the
sum of the series min and max, not the min and max od the summed
datapoints in each series.

Note: it is left to the creativity of the user to visually disambiguate
which plot is associated with which Y axis.

Additional checks for undefined elements in CoreUtils.extendArrayProps().

Remove the duplicate outlier in boxplot-scatter.xml.
rosco54 added a commit to rosco54/apexcharts.js that referenced this issue Feb 19, 2024
area/multi-axis-with-seriesname-arrays.xml

- also use this facility to simplify the
specification of series inclusion in stacked charts, especially when
combined with other series.

See stacked-column-with-line.xml
and c.f. stacked-column-with-line-new.xml

The new facility should be backward compatible with the existing
style (both described below to the best of my knowledge), via code
that converts the old data structure to the new one.

The current style of mapping multiple series to a y axis is to
include one yaxis config per series but set each yaxis seriesName to
the same series name and then set show: false on all axes that are not
required.

While not the purpose of apexcharts#4237, it offers a more intuitive alternative
that explicitly configures yaxis elements with the series that will be
referenced to them (seriesName: []). This only requires including the
yaxis elements that will be seen on the chart.

Old way:
  yax:	ser
  0:	0
  1:	1
  2:	1
  3:	1
  4:	1

Axes 0..4 are all scaled and all will be rendered unless the axes are
show: false. If the chart is stacked, it's assumed that series 1..4 are
the contributing series.

New way:
  yax:	ser
  0:	[0]
  1:	[1,2,3,4]

If the chart is stacked (a global chart setting), it must be assumed
that any axis with multiple series is stacked, presumably as separate
sets (not yet implemented).
 

Fix stacked chart y axis scaling: min and max were computed as the
sum of the series min and max, not the min and max od the summed
datapoints in each series.

Note: it is left to the creativity of the user to visually disambiguate
which plot is associated with which Y axis.

Additional checks for undefined elements in CoreUtils.extendArrayProps().

Remove the duplicate outlier in boxplot-scatter.xml.
rosco54 added a commit to rosco54/apexcharts.js that referenced this issue Feb 19, 2024
area/multi-axis-with-seriesname-arrays.xml

- also use this facility to simplify the
specification of series inclusion in stacked charts, especially when
combined with other series.

See stacked-column-with-line.xml
and c.f. stacked-column-with-line-new.xml

The new facility should be backward compatible with the existing
style (both described below to the best of my knowledge), via code
that converts the old data structure to the new one.

The current style of mapping multiple series to a y axis is to
include one yaxis config per series but set each yaxis seriesName to
the same series name and then set show: false on all axes that are not
required.

While not the purpose of apexcharts#4237, it offers a more intuitive alternative
that explicitly configures yaxis elements with the series that will be
referenced to them (seriesName: []). This only requires including the
yaxis elements that will be seen on the chart.

Old way:
  yax:	ser
  0:	0
  1:	1
  2:	1
  3:	1
  4:	1

Axes 0..4 are all scaled and all will be rendered unless the axes are
show: false. If the chart is stacked, it's assumed that series 1..4 are
the contributing series.

New way:
  yax:	ser
  0:	[0]
  1:	[1,2,3,4]

If the chart is stacked (a global chart setting), it must be assumed
that any axis with multiple series is stacked, presumably as separate
sets (not yet implemented).
 

Fix stacked chart y axis scaling: min and max were computed as the
sum of the series min and max, not the min and max od the summed
datapoints in each series.

Note: it is left to the creativity of the user to visually disambiguate
which plot is associated with which Y axis.

Additional checks for undefined elements in CoreUtils.extendArrayProps().

Remove the duplicate outlier in boxplot-scatter.xml.
junedchhipa added a commit that referenced this issue Feb 23, 2024
Implement feature request #4237 plus refactor similar scale multi-axis functions
@rosco54
Copy link
Contributor

rosco54 commented Mar 20, 2024

@junedchhipa this request can be closed, unless you're waiting to document it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment