diff --git a/Documentation~/zh/changelog.md b/Documentation~/zh/changelog.md
index 09993998..0be09295 100644
--- a/Documentation~/zh/changelog.md
+++ b/Documentation~/zh/changelog.md
@@ -76,6 +76,9 @@ slug: /changelog
## master
+* (2024.09.01) 增加`Ring`的`radiusGradient`参数设置渐变方向
+* (2024.09.01) 优化`Axis`为时间轴时首个Label的位置
+
## v3.11.2
* (2024.08.01) 发布`v3.11.2`版本
diff --git a/Editor/Series/RingEditor.cs b/Editor/Series/RingEditor.cs
index 26a35856..5721c7e0 100644
--- a/Editor/Series/RingEditor.cs
+++ b/Editor/Series/RingEditor.cs
@@ -16,6 +16,7 @@ namespace XCharts.Editor
PropertyField("m_RoundCap");
PropertyField("m_Clockwise");
PropertyField("m_AvoidLabelOverlap");
+ PropertyField("m_RadiusGradient");
PropertyField("m_ItemStyle");
PropertyField("m_Animation");
diff --git a/Runtime/Serie/Ring/Ring.cs b/Runtime/Serie/Ring/Ring.cs
index ebd9b660..368e187c 100644
--- a/Runtime/Serie/Ring/Ring.cs
+++ b/Runtime/Serie/Ring/Ring.cs
@@ -9,7 +9,20 @@ namespace XCharts.Runtime
[SerieDataExtraField()]
public class Ring : Serie
{
+ [SerializeField][Since("v3.12.0")] private bool m_RadiusGradient = false;
+
+ ///
+ /// Whether to use gradient color in pie chart.
+ /// || 是否开启半径方向的渐变效果。
+ ///
+ public bool radiusGradient
+ {
+ get { return m_RadiusGradient; }
+ set { if (PropertyUtil.SetStruct(ref m_RadiusGradient, value)) { SetVerticesDirty(); } }
+ }
+
public override SerieColorBy defaultColorBy { get { return SerieColorBy.Data; } }
+
public static Serie AddDefaultSerie(BaseChart chart, string serieName)
{
var serie = chart.AddSerie(serieName);
diff --git a/Runtime/Serie/Ring/RingHandler.cs b/Runtime/Serie/Ring/RingHandler.cs
index 40fc8c40..cb42ade7 100644
--- a/Runtime/Serie/Ring/RingHandler.cs
+++ b/Runtime/Serie/Ring/RingHandler.cs
@@ -162,7 +162,7 @@ namespace XCharts.Runtime
DrawBackground(vh, serie, serieData, j, insideRadius, outsideRadius);
UGL.DrawDoughnut(vh, serie.context.center, insideRadius, outsideRadius, itemColor, itemToColor,
Color.clear, startDegree, toDegree, borderWidth, borderColor, 0, chart.settings.cicleSmoothness,
- roundCap, serie.clockwise);
+ roundCap, serie.clockwise, serie.radiusGradient);
DrawCenter(vh, serie, serieData, insideRadius, j == data.Count - 1);
}