-
Notifications
You must be signed in to change notification settings - Fork 351
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
when using point.pattern: null data points lead to 'Error: <use> attribute y: Expected length, "NaN".' in ESM module #2107
Comments
Hi @jonka-blip, could you provide reproducible code? |
The issue gets triggered if a point:pattern for the circle is used. You can see the Error in js console. I am using latest Chrome. |
var chart = bb.generate({bindto: "#lineChart",
data: {type: "line",
columns: [ ["custom_id",1,null] ],
},
"point": {
"pattern": ["<circle cx=\"4\" cy=\"4\" r=\"4\" />"]
}
}); |
billboard.js/src/ChartInternal/shape/point.ts Line 518 in af19370
I couldn't see what value |
@watnab and why gets the error triggered only if point.pattern is defined? 🤔 |
billboard.js/src/ChartInternal/shape/point.ts Line 504 in af19370
It may be good |
|
My test was wrong.
The reason may be that |
Confirmed the issue. It happens to determine custom data points position for BTW, there's no need to use custom data point for |
Exclude position computation for nullish data Ref naver#2107
Exclude position computation for nullish data Ref naver#2107
cool 😎 ❤️ |
# [3.1.0](3.0.3...3.1.0) (2021-06-25) ### Bug Fixes * **axis:** Fix axis.x.padding value setting ([5b4b509](5b4b509)), closes [#2038](#2038) * **axis:** fix handling x padding value ([489d47a](489d47a)), closes [#2038](#2038) * **candlestick:** fix to set expand state ([a055b20](a055b20)), closes [#2036](#2036) * **Chart:** Handle nullish properties from API extendings safely ([6cbf64a](6cbf64a)), closes [#2132](#2132) [#2134](#2134) * **data:** Fix duplicated data.onclick call ([b4c5dc2](b4c5dc2)), closes [#2104](#2104) * **data:** Fix nullish data filtering for grouped data ([af19370](af19370)), closes [#2096](#2096) * **gauge:** Fix incorrect rendering when gauge.min is given ([31fc981](31fc981)), closes [#2123](#2123) * **point:** Fix custom point for nullish data ([8c198f2](8c198f2)), closes [#2107](#2107) * **region:** fix region append position ([2b50443](2b50443)), closes [#2067](#2067) * **size:** enhance applying height value ([0664a60](0664a60)), closes [#2086](#2086) * **tooltip:** Correct the type of selectedData ([05b694d](05b694d)), closes [#2056](#2056) [#2058](#2058) * **types:** fix missing candlestick export ([f218939](f218939)), closes [#2007](#2007) * **types:** updated bar/candlestick options types ([d89c3f3](d89c3f3)), closes [#2043](#2043) * **zoom:** Fix incorrect tooltip position ([689bfdf](689bfdf)), closes [#2095](#2095) * **zoom,grid:** fix grid line pos during zoom ([e84a4f1](e84a4f1)), closes [#2156](#2156) ### Features * **all:** contain inline css prop setting ([fde6a89](fde6a89)), closes [#2076](#2076) * **api:** Intent to ship append load ([8076795](8076795)), closes [#2140](#2140) * **data:** Intent to ship data.onshown/onhidden ([af98eb7](af98eb7)), closes [#2146](#2146) * **data.labels:** Intent to ship data.labels.backgroundColors ([e0b2fed](e0b2fed)), closes [#1954](#1954) * **subchart:** Intent to ship subchart.init.range option ([967bf1b](967bf1b)), closes [#2037](#2037) * **subchart:** Intent to ship subchart.showHandle ([219bff3](219bff3)), closes [#2044](#2044)
* **Chart:** Handle nullish properties from API extendings safely ([6cbf64a](6cbf64a)), closes [#2132](#2132) [#2134](#2134) * **data:** Fix duplicated data.onclick call ([b4c5dc2](b4c5dc2)), closes [#2104](#2104) * **data:** Fix nullish data filtering for grouped data ([af19370](af19370)), closes [#2096](#2096) * **gauge:** Fix incorrect rendering when gauge.min is given ([31fc981](31fc981)), closes [#2123](#2123) * **point:** Fix custom point for nullish data ([8c198f2](8c198f2)), closes [#2107](#2107) * **region:** fix region append position ([2b50443](2b50443)), closes [#2067](#2067) * **size:** enhance applying height value ([0664a60](0664a60)), closes [#2086](#2086) * **tooltip:** Correct the type of selectedData ([05b694d](05b694d)), closes [#2056](#2056) [#2058](#2058) * **zoom:** Fix incorrect tooltip position ([689bfdf](689bfdf)), closes [#2095](#2095) * **zoom,grid:** fix grid line pos during zoom ([e84a4f1](e84a4f1)), closes [#2156](#2156) * **all:** contain inline css prop setting ([fde6a89](fde6a89)), closes [#2076](#2076) * **api:** Intent to ship append load ([8076795](8076795)), closes [#2140](#2140) * **data:** Intent to ship data.onshown/onhidden ([af98eb7](af98eb7)), closes [#2146](#2146) * **data.labels:** Intent to ship data.labels.backgroundColors ([e0b2fed](e0b2fed)), closes [#1954](#1954) * **subchart:** Intent to ship subchart.init.range option ([967bf1b](967bf1b)), closes [#2037](#2037) * **subchart:** Intent to ship subchart.showHandle ([219bff3](219bff3)), closes [#2044](#2044)
Description
When lines have null data points (as in "line.connectNull"), the js code throws the Error: attribute y: Expected length, "NaN". This happens if the code gets imported via 'import { bb, line } from "billboard.js/dist/billboard.esm.js"'
a quick fix is to change Line 249 in point.ts to
but I am not sure if this is the appropriate fix
The text was updated successfully, but these errors were encountered: