diff --git a/Documentation~/zh/changelog.md b/Documentation~/zh/changelog.md index 0be09295..b0e7be0b 100644 --- a/Documentation~/zh/changelog.md +++ b/Documentation~/zh/changelog.md @@ -76,6 +76,7 @@ slug: /changelog ## master +* (2024.09.03) 完善`AreaStyle`的`origin`参数设置区域填充起始位置 * (2024.09.01) 增加`Ring`的`radiusGradient`参数设置渐变方向 * (2024.09.01) 优化`Axis`为时间轴时首个Label的位置 diff --git a/Runtime/Serie/Line/LineHelper.cs b/Runtime/Serie/Line/LineHelper.cs index 25cd03ea..25b28399 100644 --- a/Runtime/Serie/Line/LineHelper.cs +++ b/Runtime/Serie/Line/LineHelper.cs @@ -35,12 +35,27 @@ namespace XCharts.Runtime return; } var gridXY = (isY ? grid.context.x : grid.context.y); + var min = gridXY; + var max = gridXY + (isY ? grid.context.width : grid.context.height); + var start = 0f; + switch(serie.areaStyle.origin) + { + case AreaStyle.AreaOrigin.Start: + start = min; + break; + case AreaStyle.AreaOrigin.End: + start = max; + break; + default: + start = gridXY + relativedAxis.context.offset; + break; + } if (lastStackSerie == null) { DrawSerieLineNormalArea(vh, serie, isY, - gridXY + relativedAxis.context.offset, - gridXY, - gridXY + (isY ? grid.context.width : grid.context.height), + start, + min, + max, areaColor, areaToColor, visualMap, @@ -52,9 +67,9 @@ namespace XCharts.Runtime else { DrawSerieLineStackArea(vh, serie, lastStackSerie, isY, - gridXY + relativedAxis.context.offset, - gridXY, - gridXY + (isY ? grid.context.width : grid.context.height), + start, + min, + max, areaColor, areaToColor, visualMap,