Justin-ZS opened a new pull request, #21218:
URL: https://github.com/apache/echarts/pull/21218

   <!-- Please fill in the following information to help us review your PR more 
efficiently. -->
   
   ## Brief Information
   
   This pull request is in the type of:
   
   - [x] bug fixing
   - [ ] new feature
   - [ ] others
   
   
   
   ### What does this PR do?
   
   <!-- USE ONE SENTENCE TO DESCRIBE WHAT THIS PR DOES. -->
   
   Fix incorrect data label position when bar width/height is 0.
   <img width="1325" height="572" alt="截屏2025-08-22 14 15 30" 
src="https://github.com/user-attachments/assets/336d0a37-c0b4-4572-85d6-d9ee75a37b9d";
 />
   
   
   
   ### Fixed issues
   
   <!--
   - #xxxx: ...
   -->
   
   - #21144
   
   
   ## Details
   
   ### Before: What was the problem?
   
   <!-- DESCRIBE THE BUG OR REQUIREMENT HERE. -->
   
   When a bar has zero width or height (data value is 0), the label position 
calculation for `label.position: 'outside'` was incorrect, especially when the 
axis is inverted. 
   The original logic only checked `layout.height >= 0` or `layout.width >= 0` 
without considering axis inversion, causing labels to appear in wrong positions.
   
   <!-- ADD SCREENSHOT HERE IF APPLICABLE. -->
   
   
   
   ### After: How does it behave after the fixing?
   
   <!-- THE RESULT AFTER FIXING AND A SIMPLE EXPLANATION ABOUT HOW IT IS FIXED. 
-->
   
   Added two helper functions `getLabelPositionForHorizontal` and 
`getLabelPositionForVertical` to properly handle label positioning when bar 
dimensions are zero. 
   The functions check the value axis's `inverse` property to determine the 
correct label position, ensuring labels appear correctly regardless of axis 
configuration.
   
   <!-- ADD SCREENSHOT HERE IF APPLICABLE. -->
   
   
   
   ## Document Info
   
   One of the following should be checked.
   
   - [x] This PR doesn't relate to document changes
   - [ ] The document should be updated later
   - [ ] The document changes have been made in apache/echarts-doc#xxx
   
   
   
   ## Misc
   
   ### ZRender Changes
   
   - [ ] This PR depends on ZRender changes (ecomfe/zrender#xxx).
   
   ### Related test cases or examples to use the new APIs
   
   N.A.
   
   
   
   ## Others
   
   ### Merging options
   
   - [ ] Please squash the commits into a single one when merging.
   
   ### Other information
   
   Modified `src/chart/bar/BarView.ts` to replace simple ternary operators with 
smarter function calls that consider axis inversion when determining label 
positions for zero-dimension bars.
   


-- 
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