hihibaibai opened a new issue, #21340:
URL: https://github.com/apache/echarts/issues/21340

   ### Version
   
   6.0.0
   
   ### Link to Minimal Reproduction
   
   https://echarts.apache.org/examples/zh/editor.html?c=bar-y-category-stack
   
   ### Steps to Reproduce
   
   I'm trying to make a gantt, and would like draw the graph by myself. And I 
put key-value dataset in series, then use api.value() function to get the data 
so I can draw the graph.
   Here is the option that I use not working properly
   ```
   option = {
           title: {
             text: "Custom Series Example"
           },
           xAxis: {
             type: "value",
             show: true,
             min: new Date('2025-11-04').getTime(),
             max: new Date('2025-11-10').getTime(),
             interval: 24 * 60 * 60 * 1000,
             axisLabel: {
               formatter: function(value) {
                 return new Date(value).toISOString().split('T')[0];
               }
             }
           },
           yAxis: {
             type: "value",
             min: 0,
             max: 100
           },
           series: [{
             type: "custom",
             coordinateSystem: 'cartesian2d',
             renderItem: function(params, api) {
               var point = api.coord([api.value(0), api.value(1)]);
               console.log(params);
               console.log(api);
               console.log(point);
               var centerX = api.getWidth() / 2;
               var centerY = api.getHeight() / 2;
               var size = 50;
   
               return {
                 type: 'rect',
                 shape: {
                   x: centerX - size / 2,
                   y: centerY - size / 2,
                   width: size,
                   height: size
                 },
                 style: {
                   fill: '#000000'
                 }
               };
             },
             dimensions: [
               {name:'x', type: 'ordinal'},
               {name:'y', type: 'ordinal'},
             ],
             data: [
               {x: new Date('2025-11-04').getTime(), y: '50'},
               // {x: '2025-11-05', y: '60'},
               // {x: '2025-11-06', y: '70'}
             ]
           }]
         };
   ```
   The option above will print api in console. And I try 
"api.value(0)","api.value('x')", it returns NaN.
   I'm expecting '2025-11-05'.
   I read options documentation, no explaination about key-value set.
   
   ### Current Behavior
   
   The option above will print api in console. And I try 
"api.value(0)","api.value('x')", it returns NaN.
   
   ### Expected Behavior
   
   I'm expecting '2025-11-05' on call of "api.value('x')"
   
   ### Environment
   
   ```markdown
   - OS:
   - Browser:
   - Framework:
   ```
   
   ### Any additional comments?
   
   Then I try this option:
   `option = {
           title: {
             text: "Custom Series Example"
           },
           xAxis: {
             type: "value",
             show: true,
             min: new Date('2025-11-04').getTime(),
             max: new Date('2025-11-10').getTime(),
             interval: 24 * 60 * 60 * 1000,
             axisLabel: {
               formatter: function(value) {
                 return new Date(value).toISOString().split('T')[0];
               }
             }
           },
           yAxis: {
             type: "value",
             min: 0,
             max: 100
           },
           series: [{
             type: "custom",
             coordinateSystem: 'cartesian2d',
             renderItem: function(params, api) {
               var point = api.coord([api.value(0), api.value(1)]);
               console.log(params);
               console.log(api);
               console.log(point);
               var centerX = api.getWidth() / 2;
               var centerY = api.getHeight() / 2;
               var size = 50;
   
               return {
                 type: 'rect',
                 shape: {
                   x: centerX - size / 2,
                   y: centerY - size / 2,
                   width: size,
                   height: size
                 },
                 style: {
                   fill: '#000000'
                 }
               };
             },
             dimensions: [
               {name:'x', type: 'ordinal'},
               {name:'y', type: 'ordinal'},
             ],
             data: [
               [new Date('2025-11-04'),'50'],
               // {x: '2025-11-05', y: '60'},
               // {x: '2025-11-06', y: '70'}
             ]
           }]
         };`
   This time, I can get the value from api.value(0).
   I have no idea why this will happen. And there is no function to tell me 
what value I can use. It will be nice if there is a function for debugging.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to