未验证 提交 67a87498 编写于 作者: Y Yi Shen 提交者: GitHub

Merge pull request #14017 from susiwen8/labelline

Fix(pie): labelLine is not hidden in some case
......@@ -69,7 +69,7 @@ interface PieLabelOption extends Omit<SeriesLabelOption, 'rotate' | 'position'>
bleedMargin?: number
distanceToLabelLine?: number
position?: SeriesLabelOption['position'] | 'outer' | 'inner' | 'center'
position?: SeriesLabelOption['position'] | 'outer' | 'inner' | 'center' | 'outside'
}
interface PieLabelLineOption extends LabelLineOption {
......
......@@ -136,7 +136,7 @@ class PiePiece extends graphic.Sector {
const labelLine = sector.getTextGuideLine();
const labelText = sector.getTextContent();
extend(labelLine.ensureState('select'), {
labelLine && extend(labelLine.ensureState('select'), {
x: dx,
y: dy
});
......@@ -185,6 +185,11 @@ class PiePiece extends graphic.Sector {
z2: 10
});
const labelPosition = seriesModel.get(['label', 'position']);
if (labelPosition !== 'outside' && labelPosition !== 'outer') {
sector.getTextGuideLine()?.hide();
return;
}
// Default use item visual color
setLabelLineStyle(this, getLabelLineStatesModels(itemModel), {
stroke: visualColor,
......
......@@ -48,6 +48,7 @@ under the License.
<div id="main5"></div>
<div id="main6"></div>
<div id="main7"></div>
<div id="main8"></div>
<script>
......@@ -697,5 +698,67 @@ under the License.
});
</script>
<script>
require([
'echarts'/*, 'map/js/china' */
], function (echarts) {
const option = {
series: [
{
name: '访问来源',
type: 'pie',
radius: '50%',
center: ['25%', '50%'],
data: [
{ value: 1, name: '搜索引擎' },
],
emphasis: {
itemStyle: {
shadowBlur: 10,
shadowOffsetX: 0,
shadowColor: 'rgba(0, 0, 0, 0.5)'
}
},
label: {
position: 'inside'
}
},
{
name: '访问来源1',
type: 'pie',
radius: '50%',
center: ['75%', '50%'],
data: [
{ value: 1, name: '搜索引擎' },
],
emphasis: {
itemStyle: {
shadowBlur: 10,
shadowOffsetX: 0,
shadowColor: 'rgba(0, 0, 0, 0.5)'
}
},
label: {
position: 'outside'
}
},
]
};
setTimeout(() => {
option.series[0].label.position = 'outside';
option.series[1].label.position = 'inside';
chart.setOption(option);
}, 2000);
var chart = testHelper.create(echarts, 'main8', {
title: 'labelLine should be hidden when position is not \'outside\'',
height: 300,
option: option
});
});
</script>
</body>
</html>
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册