Bug reportOct 20, 2026· 0:26· 7 views
ECharts v6.1.0: coord markPoint formatter '{c}' shows 'undefined' on time axis (issue #20410)
0:26 total
Comments · 0
Be the first to comment.
Bug reportby SceneRecap AI
mediummarkPoint data/value resolution for coord-based points on a time axis. The value used by the '{c}' template (params.value) appears to be unset. coord[1] itself is correct.
os: macOSdpr: 1locale: en-USbrowser: Chromium 151.0.7922.34echarts: 6.1.0 (cdn.jsdelivr.net/npm/echarts@6.1.0/dist/echarts.min.js)timezone: Europe/Berlinviewport: 1280x720
Repro steps
- 1.Load the ECharts v6.1.0 test page. It shows two identical line charts on a time x-axis (ticks 01/01 to 06/01).
- 2.In the left chart, add a markPoint defined by coord at the 03/01 point (value 198) with label formatter: '{c}'.
- 3.Observe the pin label on the left chart.
- 4.Control: in the right chart, use the same coord markPoint with formatter: p => p.data.coord[1] and observe the pin label.
Expected
The coord markPoint pin with formatter '{c}' shows the point value 198. The 9.0s caption reads: Expected: 198.
Actual
The left pin shows the truncated text "defin" (from "undefined") instead of 198. The right control pin, which uses the function formatter, shows 198.
Evidence
visualLeft panel, labeled BROKEN with formatter: '{c}', shows a pin above 03/01 with truncated text "defin" instead of a numeric value.
visualControl: right panel, labeled WORKING with formatter: p => p.data.coord[1], shows the pin at 03/01 correctly labeled 198.
visualBottom caption reads: Expected: 198, Actual on pin: undefined.
visualBottom caption reads: Workaround: p => p.data.coord[1] renders 198 correctly. The right pin still shows 198 and the left pin still shows "defin".
visualBottom caption reads: Same coord data, same chart, only formatter differs. The left pin is still undefined.
consoleWarning: the parser-blocking cross-site script echarts@6.1.0 from cdn.jsdelivr.net is invoked via document.write. This is not related to the bug. It confirms the library version that was loaded.
Issue markdown (copy-paste ready)
## Summary
On ECharts v6.1.0, a markPoint defined by `coord` on a time-axis line chart renders "undefined" when its label uses `formatter: '{c}'`. The same coord with a function formatter `p => p.data.coord[1]` renders the correct value, 198.
## Environment
- ECharts 6.1.0 (cdn.jsdelivr.net)
- Chromium 151.0.7922.34, macOS
- Viewport 1280x720, DPR 1, en-US, Europe/Berlin
## Steps to reproduce
1. Create a line chart with a time x-axis (ticks 01/01 to 06/01). (t=1s)
2. Add a markPoint using `coord` at the 03/01 point (value 198).
3. Set the markPoint label `formatter: '{c}'`.
4. Render the chart and look at the pin label.
## Expected
The pin shows `198`.
## Actual
The pin shows `undefined`. It is truncated to "defin" inside the pin. (t=1s to 23s)
## Control
The same chart and coord data with `formatter: p => p.data.coord[1]` shows `198` correctly. (t=1s, t=17s)
## Evidence
- t=1s: left BROKEN pin shows "defin". The right WORKING pin shows "198".
- t=9s: caption says Expected: 198, Actual on pin: undefined.
- t=17s: caption says Workaround: p => p.data.coord[1] renders 198 correctly.
- t=23s: caption says Same coord data, same chart, only formatter differs.
- t=0s: console warning about echarts@6.1.0 loaded via document.write. This is unrelated and only confirms the version.
## Suspected area
Value resolution for coord-based markPoints on a time axis. `params.value`, which is used by `{c}`, seems to be left undefined. `data.coord[1]` is populated.
## Workaround
Use `formatter: p => p.data.coord[1]`.
*Recorded with SceneRecap.*Your recordings could explain themselves too.
Free plan · silent recordings welcome · bug reports included.
Try SceneRecap free →