mirror of
https://github.com/XCharts-Team/XCharts.git
synced 2026-05-25 10:20:10 +00:00
增加数据更新动画
This commit is contained in:
@@ -43,6 +43,10 @@ namespace XCharts
|
||||
}
|
||||
}
|
||||
var isPercentStack = m_Series.IsPercentStack(serie.stack, SerieType.Bar);
|
||||
bool dataChanging = false;
|
||||
float updateDuration = serie.animation.GetUpdateAnimationDuration();
|
||||
float xMinValue = xAxis.GetCurrMinValue(updateDuration);
|
||||
float xMaxValue = xAxis.GetCurrMaxValue(updateDuration);
|
||||
for (int i = serie.minShow; i < maxCount; i++)
|
||||
{
|
||||
if (i >= seriesHig.Count)
|
||||
@@ -51,7 +55,8 @@ namespace XCharts
|
||||
}
|
||||
var serieData = showData[i];
|
||||
serieData.canShowLabel = true;
|
||||
float value = showData[i].data[1];
|
||||
float value = showData[i].GetCurrData(1, updateDuration);
|
||||
if (showData[i].IsDataChanged()) dataChanging = true;
|
||||
float pX = seriesHig[i] + coordinateX + xAxis.runtimeZeroXOffset + yAxis.axisLine.width;
|
||||
float pY = coordinateY + +i * categoryWidth;
|
||||
if (!yAxis.boundaryGap) pY -= categoryWidth / 2;
|
||||
@@ -66,9 +71,9 @@ namespace XCharts
|
||||
}
|
||||
else
|
||||
{
|
||||
valueTotal = xAxis.runtimeMaxValue - xAxis.runtimeMinValue;
|
||||
valueTotal = xMaxValue - xMinValue;
|
||||
if (valueTotal != 0)
|
||||
barHig = (xAxis.runtimeMinValue > 0 ? value - xAxis.runtimeMinValue : value)
|
||||
barHig = (xMinValue > 0 ? value - xMinValue : value)
|
||||
/ valueTotal * coordinateWidth;
|
||||
seriesHig[i] += barHig;
|
||||
}
|
||||
@@ -103,6 +108,10 @@ namespace XCharts
|
||||
{
|
||||
m_BarLastOffset += barGapWidth;
|
||||
}
|
||||
if (dataChanging)
|
||||
{
|
||||
RefreshChart();
|
||||
}
|
||||
}
|
||||
|
||||
private float CheckAnimation(Serie serie, int dataIndex, float barHig)
|
||||
@@ -156,8 +165,10 @@ namespace XCharts
|
||||
}
|
||||
|
||||
var isPercentStack = m_Series.IsPercentStack(serie.stack, SerieType.Bar);
|
||||
float updateDuration = serie.animation.GetUpdateAnimationDuration();
|
||||
bool dataChanging = false;
|
||||
float updateDuration = serie.animation.GetUpdateAnimationDuration();
|
||||
float yMinValue = yAxis.GetCurrMinValue(updateDuration);
|
||||
float yMaxValue = yAxis.GetCurrMaxValue(updateDuration);
|
||||
for (int i = serie.minShow; i < maxCount; i++)
|
||||
{
|
||||
if (i >= seriesHig.Count)
|
||||
@@ -181,9 +192,9 @@ namespace XCharts
|
||||
}
|
||||
else
|
||||
{
|
||||
valueTotal = yAxis.runtimeMaxValue - yAxis.runtimeMinValue;
|
||||
valueTotal = yMaxValue - yMinValue;
|
||||
if (valueTotal != 0)
|
||||
barHig = (yAxis.runtimeMinValue > 0 ? value - yAxis.runtimeMinValue : value)
|
||||
barHig = (yMinValue > 0 ? value - yMinValue : value)
|
||||
/ valueTotal * coordinateHeight;
|
||||
seriesHig[i] += barHig;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user