mirror of
https://github.com/XCharts-Team/XCharts.git
synced 2026-05-30 13:28:47 +00:00
增加Tooltip的itemFormatter对\n换行的支持
This commit is contained in:
@@ -79,6 +79,7 @@ slug: /changelog
|
|||||||
|
|
||||||
## master
|
## master
|
||||||
|
|
||||||
|
* (2025.02.19) 增加`Tooltip`的`itemFormatter`对`\n`换行的支持
|
||||||
* (2025.02.18) 优化`Tooltip`的对齐方式
|
* (2025.02.18) 优化`Tooltip`的对齐方式
|
||||||
* (2025.02.09) 修复`SaveAsImage`保存图片时不支持透明度的问题 (#337)
|
* (2025.02.09) 修复`SaveAsImage`保存图片时不支持透明度的问题 (#337)
|
||||||
* (2025.02.05) 增加`GraphChart`可单独设置`data`样式的支持
|
* (2025.02.05) 增加`GraphChart`可单独设置`data`样式的支持
|
||||||
|
|||||||
@@ -33,7 +33,10 @@ namespace XCharts.Runtime
|
|||||||
var newMarker = SerieHelper.GetItemMarker(serie, serieData, marker);
|
var newMarker = SerieHelper.GetItemMarker(serie, serieData, marker);
|
||||||
var newItemFormatter = SerieHelper.GetItemFormatter(serie, serieData, itemFormatter);
|
var newItemFormatter = SerieHelper.GetItemFormatter(serie, serieData, itemFormatter);
|
||||||
var newNumericFormatter = SerieHelper.GetNumericFormatter(serie, serieData, numericFormatter);
|
var newNumericFormatter = SerieHelper.GetNumericFormatter(serie, serieData, numericFormatter);
|
||||||
|
var isEmptyItemFormatter = string.IsNullOrEmpty(newItemFormatter);
|
||||||
|
|
||||||
|
if (isEmptyItemFormatter)
|
||||||
|
{
|
||||||
var param = serie.context.param;
|
var param = serie.context.param;
|
||||||
param.serieName = serie.serieName;
|
param.serieName = serie.serieName;
|
||||||
param.serieIndex = serie.index;
|
param.serieIndex = serie.index;
|
||||||
@@ -68,6 +71,7 @@ namespace XCharts.Runtime
|
|||||||
param.marker = newMarker;
|
param.marker = newMarker;
|
||||||
param.itemFormatter = newItemFormatter;
|
param.itemFormatter = newItemFormatter;
|
||||||
param.numericFormatter = newNumericFormatter;
|
param.numericFormatter = newNumericFormatter;
|
||||||
|
param.isSecondaryMark = true;
|
||||||
param.columns.Clear();
|
param.columns.Clear();
|
||||||
|
|
||||||
param.columns.Add(param.marker);
|
param.columns.Add(param.marker);
|
||||||
@@ -77,6 +81,30 @@ namespace XCharts.Runtime
|
|||||||
paramList.Add(param);
|
paramList.Add(param);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
newItemFormatter = newItemFormatter.Replace("\\n", "\n");
|
||||||
|
var temp = newItemFormatter.Split('\n');
|
||||||
|
foreach (var str in temp)
|
||||||
|
{
|
||||||
|
var param = new SerieParams();
|
||||||
|
param.serieName = serie.serieName;
|
||||||
|
param.serieIndex = serie.index;
|
||||||
|
param.category = category;
|
||||||
|
param.serieData = serieData;
|
||||||
|
param.dataCount = serie.dataCount;
|
||||||
|
param.value = 0;
|
||||||
|
param.total = 0;
|
||||||
|
param.color = color;
|
||||||
|
param.marker = newMarker;
|
||||||
|
param.itemFormatter = str;
|
||||||
|
param.numericFormatter = newNumericFormatter;
|
||||||
|
param.isSecondaryMark = false;
|
||||||
|
param.columns.Clear();
|
||||||
|
paramList.Add(param);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private void DrawCandlestickSerie(VertexHelper vh, SimplifiedCandlestick serie)
|
private void DrawCandlestickSerie(VertexHelper vh, SimplifiedCandlestick serie)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -59,17 +59,28 @@ namespace XCharts.Runtime
|
|||||||
var dimension = VisualMapHelper.GetDimension(visualMap, defaultDimension);
|
var dimension = VisualMapHelper.GetDimension(visualMap, defaultDimension);
|
||||||
|
|
||||||
title = serie.serieName;
|
title = serie.serieName;
|
||||||
|
itemFormatter = SerieHelper.GetItemFormatter(serie, null, itemFormatter);
|
||||||
|
numericFormatter = SerieHelper.GetNumericFormatter(serie, null, numericFormatter);
|
||||||
|
marker = SerieHelper.GetItemMarker(serie, null, marker);
|
||||||
|
var color = visualMap.GetColor(value);
|
||||||
|
|
||||||
|
if (itemFormatter == null) itemFormatter = "";
|
||||||
|
itemFormatter = itemFormatter.Replace("\\n", "\n");
|
||||||
|
var temp = itemFormatter.Split('\n');
|
||||||
|
for (int i = 0; i < temp.Length; i++)
|
||||||
|
{
|
||||||
|
var formatter = temp[i];
|
||||||
|
var param = i == 0 ? serie.context.param : new SerieParams();
|
||||||
|
|
||||||
var param = serie.context.param;
|
|
||||||
param.serieName = serie.serieName;
|
param.serieName = serie.serieName;
|
||||||
param.serieIndex = serie.index;
|
param.serieIndex = serie.index;
|
||||||
param.dimension = dimension;
|
param.dimension = dimension;
|
||||||
param.dataCount = serie.dataCount;
|
param.dataCount = serie.dataCount;
|
||||||
param.serieData = null;
|
param.serieData = null;
|
||||||
param.color = visualMap.GetColor(value);
|
param.color = color;
|
||||||
param.marker = SerieHelper.GetItemMarker(serie, null, marker);
|
param.marker = marker;
|
||||||
param.itemFormatter = SerieHelper.GetItemFormatter(serie, null, itemFormatter);
|
param.itemFormatter = formatter;
|
||||||
param.numericFormatter = SerieHelper.GetNumericFormatter(serie, null, numericFormatter);
|
param.numericFormatter = numericFormatter;
|
||||||
param.columns.Clear();
|
param.columns.Clear();
|
||||||
|
|
||||||
param.columns.Add(param.marker);
|
param.columns.Add(param.marker);
|
||||||
@@ -78,6 +89,7 @@ namespace XCharts.Runtime
|
|||||||
|
|
||||||
paramList.Add(param);
|
paramList.Add(param);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (dataIndex < 0)
|
if (dataIndex < 0)
|
||||||
@@ -96,17 +108,27 @@ namespace XCharts.Runtime
|
|||||||
category = xAxis.GetData((int)serieData.GetData(0));
|
category = xAxis.GetData((int)serieData.GetData(0));
|
||||||
}
|
}
|
||||||
title = serie.serieName;
|
title = serie.serieName;
|
||||||
|
itemFormatter = SerieHelper.GetItemFormatter(serie, serieData, itemFormatter);
|
||||||
|
numericFormatter = SerieHelper.GetNumericFormatter(serie, serieData, numericFormatter);
|
||||||
|
marker = SerieHelper.GetItemMarker(serie, serieData, marker);
|
||||||
|
|
||||||
|
if (itemFormatter == null) itemFormatter = "";
|
||||||
|
itemFormatter = itemFormatter.Replace("\\n", "\n");
|
||||||
|
var temp = itemFormatter.Split('\n');
|
||||||
|
for (int i = 0; i < temp.Length; i++)
|
||||||
|
{
|
||||||
|
var formatter = temp[i];
|
||||||
|
var param = i == 0 ? serie.context.param : new SerieParams();
|
||||||
|
|
||||||
var param = serie.context.param;
|
|
||||||
param.serieName = serie.serieName;
|
param.serieName = serie.serieName;
|
||||||
param.serieIndex = serie.index;
|
param.serieIndex = serie.index;
|
||||||
param.dimension = dimension;
|
param.dimension = dimension;
|
||||||
param.dataCount = serie.dataCount;
|
param.dataCount = serie.dataCount;
|
||||||
param.serieData = serieData;
|
param.serieData = serieData;
|
||||||
param.color = serieData.context.color;
|
param.color = serieData.context.color;
|
||||||
param.marker = SerieHelper.GetItemMarker(serie, serieData, marker);
|
param.marker = marker;
|
||||||
param.itemFormatter = SerieHelper.GetItemFormatter(serie, serieData, itemFormatter);
|
param.itemFormatter = formatter;
|
||||||
param.numericFormatter = SerieHelper.GetNumericFormatter(serie, serieData, numericFormatter);
|
param.numericFormatter = numericFormatter;
|
||||||
param.columns.Clear();
|
param.columns.Clear();
|
||||||
|
|
||||||
param.columns.Add(param.marker);
|
param.columns.Add(param.marker);
|
||||||
@@ -116,6 +138,7 @@ namespace XCharts.Runtime
|
|||||||
paramList.Add(param);
|
paramList.Add(param);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public override void UpdateSerieContext()
|
public override void UpdateSerieContext()
|
||||||
{
|
{
|
||||||
@@ -236,7 +259,7 @@ namespace XCharts.Runtime
|
|||||||
var xValue = serieData.GetData(0);
|
var xValue = serieData.GetData(0);
|
||||||
var yValue = serieData.GetData(1);
|
var yValue = serieData.GetData(1);
|
||||||
var i = AxisHelper.GetAxisValueSplitIndex(xAxis, xValue, true, xCount);
|
var i = AxisHelper.GetAxisValueSplitIndex(xAxis, xValue, true, xCount);
|
||||||
var j = AxisHelper.GetAxisValueSplitIndex(yAxis, yValue,true, yCount);
|
var j = AxisHelper.GetAxisValueSplitIndex(yAxis, yValue, true, yCount);
|
||||||
|
|
||||||
if (serie.IsIgnoreValue(serieData, dimension))
|
if (serie.IsIgnoreValue(serieData, dimension))
|
||||||
{
|
{
|
||||||
@@ -368,7 +391,7 @@ namespace XCharts.Runtime
|
|||||||
var xValue = serieData.GetData(0);
|
var xValue = serieData.GetData(0);
|
||||||
var yValue = serieData.GetData(1);
|
var yValue = serieData.GetData(1);
|
||||||
var i = AxisHelper.GetAxisValueSplitIndex(xAxis, xValue, true, xCount);
|
var i = AxisHelper.GetAxisValueSplitIndex(xAxis, xValue, true, xCount);
|
||||||
var j = AxisHelper.GetAxisValueSplitIndex(yAxis, yValue,true, yCount);
|
var j = AxisHelper.GetAxisValueSplitIndex(yAxis, yValue, true, yCount);
|
||||||
var key = GetGridKey(i, j);
|
var key = GetGridKey(i, j);
|
||||||
var count = 0;
|
var count = 0;
|
||||||
|
|
||||||
|
|||||||
@@ -59,6 +59,12 @@ namespace XCharts.Runtime
|
|||||||
var colorIndex = serie.colorByData ? chart.GetLegendRealShowNameIndex(serieData.legendName) : serie.context.colorIndex;
|
var colorIndex = serie.colorByData ? chart.GetLegendRealShowNameIndex(serieData.legendName) : serie.context.colorIndex;
|
||||||
SerieHelper.GetItemColor(out color, out toColor, serie, serieData, chart.theme, colorIndex, SerieState.Normal);
|
SerieHelper.GetItemColor(out color, out toColor, serie, serieData, chart.theme, colorIndex, SerieState.Normal);
|
||||||
title = serieData.name;
|
title = serieData.name;
|
||||||
|
|
||||||
|
itemFormatter = SerieHelper.GetItemFormatter(serie, null, itemFormatter);
|
||||||
|
numericFormatter = SerieHelper.GetNumericFormatter(serie, serieData, numericFormatter);
|
||||||
|
marker = SerieHelper.GetItemMarker(serie, serieData, marker);
|
||||||
|
if (string.IsNullOrEmpty(itemFormatter))
|
||||||
|
{
|
||||||
for (int i = 0; i < serieData.data.Count; i++)
|
for (int i = 0; i < serieData.data.Count; i++)
|
||||||
{
|
{
|
||||||
var indicator = radar.GetIndicator(i);
|
var indicator = radar.GetIndicator(i);
|
||||||
@@ -74,9 +80,9 @@ namespace XCharts.Runtime
|
|||||||
param.total = indicator.max;
|
param.total = indicator.max;
|
||||||
param.color = color;
|
param.color = color;
|
||||||
param.category = radar.GetIndicatorName(i);
|
param.category = radar.GetIndicatorName(i);
|
||||||
param.marker = SerieHelper.GetItemMarker(serie, serieData, marker);
|
param.marker = marker;
|
||||||
param.itemFormatter = SerieHelper.GetItemFormatter(serie, serieData, itemFormatter);
|
param.itemFormatter = itemFormatter;
|
||||||
param.numericFormatter = SerieHelper.GetNumericFormatter(serie, serieData, numericFormatter);
|
param.numericFormatter = numericFormatter;
|
||||||
param.columns.Clear();
|
param.columns.Clear();
|
||||||
|
|
||||||
param.columns.Add(param.marker);
|
param.columns.Add(param.marker);
|
||||||
@@ -86,6 +92,32 @@ namespace XCharts.Runtime
|
|||||||
paramList.Add(param);
|
paramList.Add(param);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
itemFormatter = itemFormatter.Replace("\\n", "\n");
|
||||||
|
var temp = itemFormatter.Split('\n');
|
||||||
|
for (int i = 0; i < temp.Length; i++)
|
||||||
|
{
|
||||||
|
var formatter = temp[i];
|
||||||
|
var param = i == 0 ? serie.context.param : new SerieParams();
|
||||||
|
param.serieName = serie.serieName;
|
||||||
|
param.serieIndex = serie.index;
|
||||||
|
param.dimension = i;
|
||||||
|
param.serieData = serieData;
|
||||||
|
param.dataCount = serie.dataCount;
|
||||||
|
param.value = serieData.GetData(i);
|
||||||
|
param.total = serie.yTotal;
|
||||||
|
param.color = color;
|
||||||
|
param.category = radar.GetIndicatorName(i);
|
||||||
|
param.marker = marker;
|
||||||
|
param.itemFormatter = formatter;
|
||||||
|
param.numericFormatter = numericFormatter;
|
||||||
|
param.columns.Clear();
|
||||||
|
|
||||||
|
paramList.Add(param);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public override void UpdateSerieContext()
|
public override void UpdateSerieContext()
|
||||||
{
|
{
|
||||||
@@ -284,7 +316,7 @@ namespace XCharts.Runtime
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (max - min == 0) continue;
|
if (max - min == 0) continue;
|
||||||
var radius = (float) (m_RadarCoord.context.dataRadius * (value - min) / (max - min));
|
var radius = (float)(m_RadarCoord.context.dataRadius * (value - min) / (max - min));
|
||||||
var currAngle = startAngle + (n + (m_RadarCoord.positionType == RadarCoord.PositionType.Between ? 0.5f : 0)) * angle;
|
var currAngle = startAngle + (n + (m_RadarCoord.positionType == RadarCoord.PositionType.Between ? 0.5f : 0)) * angle;
|
||||||
radius *= rate;
|
radius *= rate;
|
||||||
if (n == 0)
|
if (n == 0)
|
||||||
@@ -415,7 +447,7 @@ namespace XCharts.Runtime
|
|||||||
{
|
{
|
||||||
lineColor = m_RadarCoord.outRangeColor;
|
lineColor = m_RadarCoord.outRangeColor;
|
||||||
}
|
}
|
||||||
var radius = (float) (max < 0 ? m_RadarCoord.context.dataRadius - m_RadarCoord.context.dataRadius * value / max :
|
var radius = (float)(max < 0 ? m_RadarCoord.context.dataRadius - m_RadarCoord.context.dataRadius * value / max :
|
||||||
m_RadarCoord.context.dataRadius * value / max);
|
m_RadarCoord.context.dataRadius * value / max);
|
||||||
var currAngle = startAngle + (index + (m_RadarCoord.positionType == RadarCoord.PositionType.Between ? 0.5f : 0)) * angle;
|
var currAngle = startAngle + (index + (m_RadarCoord.positionType == RadarCoord.PositionType.Between ? 0.5f : 0)) * angle;
|
||||||
radius *= rate;
|
radius *= rate;
|
||||||
|
|||||||
@@ -86,8 +86,17 @@ namespace XCharts.Runtime
|
|||||||
return;
|
return;
|
||||||
Color32 color, toColor;
|
Color32 color, toColor;
|
||||||
SerieHelper.GetItemColor(out color, out toColor, serie, serieData, chart.theme, dataIndex);
|
SerieHelper.GetItemColor(out color, out toColor, serie, serieData, chart.theme, dataIndex);
|
||||||
|
itemFormatter = SerieHelper.GetItemFormatter(serie, serieData, itemFormatter);
|
||||||
|
numericFormatter = SerieHelper.GetNumericFormatter(serie, serieData, numericFormatter);
|
||||||
|
marker = SerieHelper.GetItemMarker(serie, serieData, marker);
|
||||||
|
|
||||||
var param = serie.context.param;
|
if (itemFormatter == null) itemFormatter = "";
|
||||||
|
itemFormatter = itemFormatter.Replace("\\n", "\n");
|
||||||
|
var temp = itemFormatter.Split('\n');
|
||||||
|
for (int i = 0; i < temp.Length; i++)
|
||||||
|
{
|
||||||
|
var formatter = temp[i];
|
||||||
|
var param = i == 0 ? serie.context.param : new SerieParams();
|
||||||
param.serieName = serie.serieName;
|
param.serieName = serie.serieName;
|
||||||
param.serieIndex = serie.index;
|
param.serieIndex = serie.index;
|
||||||
param.category = category;
|
param.category = category;
|
||||||
@@ -97,9 +106,9 @@ namespace XCharts.Runtime
|
|||||||
param.value = serieData.GetData(0);
|
param.value = serieData.GetData(0);
|
||||||
param.total = serieData.GetData(1);
|
param.total = serieData.GetData(1);
|
||||||
param.color = color;
|
param.color = color;
|
||||||
param.marker = SerieHelper.GetItemMarker(serie, serieData, marker);
|
param.marker = marker;
|
||||||
param.itemFormatter = SerieHelper.GetItemFormatter(serie, serieData, itemFormatter);
|
param.itemFormatter = formatter;
|
||||||
param.numericFormatter = SerieHelper.GetNumericFormatter(serie, serieData, numericFormatter);
|
param.numericFormatter = numericFormatter;
|
||||||
param.columns.Clear();
|
param.columns.Clear();
|
||||||
|
|
||||||
param.columns.Add(param.marker);
|
param.columns.Add(param.marker);
|
||||||
@@ -108,6 +117,7 @@ namespace XCharts.Runtime
|
|||||||
|
|
||||||
paramList.Add(param);
|
paramList.Add(param);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private Vector3 GetLabelLineEndPosition(Serie serie, SerieData serieData, LabelLine labelLine)
|
private Vector3 GetLabelLineEndPosition(Serie serie, SerieData serieData, LabelLine labelLine)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -29,17 +29,29 @@ namespace XCharts.Runtime
|
|||||||
|
|
||||||
title = serie.serieName;
|
title = serie.serieName;
|
||||||
|
|
||||||
var param = serie.context.param;
|
itemFormatter = SerieHelper.GetItemFormatter(serie, serieData, itemFormatter);
|
||||||
|
numericFormatter = SerieHelper.GetNumericFormatter(serie, serieData, numericFormatter);
|
||||||
|
marker = SerieHelper.GetItemMarker(serie, serieData, marker);
|
||||||
|
var color = chart.GetMarkColor(serie, serieData);
|
||||||
|
|
||||||
|
if (itemFormatter == null) itemFormatter = "";
|
||||||
|
itemFormatter = itemFormatter.Replace("\\n", "\n");
|
||||||
|
var temp = itemFormatter.Split('\n');
|
||||||
|
for (int i = 0; i < temp.Length; i++)
|
||||||
|
{
|
||||||
|
var formatter = temp[i];
|
||||||
|
var param = i == 0 ? serie.context.param : new SerieParams();
|
||||||
|
|
||||||
param.serieName = serie.serieName;
|
param.serieName = serie.serieName;
|
||||||
param.serieIndex = serie.index;
|
param.serieIndex = serie.index;
|
||||||
param.category = category;
|
param.category = category;
|
||||||
param.dimension = 1;
|
param.dimension = 1;
|
||||||
param.dataCount = serie.dataCount;
|
param.dataCount = serie.dataCount;
|
||||||
param.serieData = serieData;
|
param.serieData = serieData;
|
||||||
param.color = chart.GetMarkColor(serie, serieData);
|
param.color = color;
|
||||||
param.marker = SerieHelper.GetItemMarker(serie, serieData, marker);
|
param.marker = marker;
|
||||||
param.itemFormatter = SerieHelper.GetItemFormatter(serie, serieData, itemFormatter);
|
param.itemFormatter = formatter;
|
||||||
param.numericFormatter = SerieHelper.GetNumericFormatter(serie, serieData, numericFormatter);
|
param.numericFormatter = numericFormatter;
|
||||||
param.columns.Clear();
|
param.columns.Clear();
|
||||||
|
|
||||||
param.columns.Add(param.marker);
|
param.columns.Add(param.marker);
|
||||||
@@ -49,6 +61,7 @@ namespace XCharts.Runtime
|
|||||||
|
|
||||||
paramList.Add(param);
|
paramList.Add(param);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public override void DrawSerie(VertexHelper vh)
|
public override void DrawSerie(VertexHelper vh)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -497,7 +497,7 @@ namespace XCharts.Runtime
|
|||||||
{
|
{
|
||||||
serieData.SetLabelActive(false);
|
serieData.SetLabelActive(false);
|
||||||
continue;
|
continue;
|
||||||
};
|
}
|
||||||
var currLabel = SerieHelper.GetSerieLabel(serie, serieData);
|
var currLabel = SerieHelper.GetSerieLabel(serie, serieData);
|
||||||
var isIgnore = serie.IsIgnoreIndex(serieData.index, defaultDimension);
|
var isIgnore = serie.IsIgnoreIndex(serieData.index, defaultDimension);
|
||||||
if (serie.show &&
|
if (serie.show &&
|
||||||
@@ -669,8 +669,14 @@ namespace XCharts.Runtime
|
|||||||
itemFormatter = SerieHelper.GetItemFormatter(serie, serieData, itemFormatter);
|
itemFormatter = SerieHelper.GetItemFormatter(serie, serieData, itemFormatter);
|
||||||
if (serie.placeHolder || TooltipHelper.IsIgnoreFormatter(itemFormatter))
|
if (serie.placeHolder || TooltipHelper.IsIgnoreFormatter(itemFormatter))
|
||||||
return;
|
return;
|
||||||
|
if (itemFormatter == null) itemFormatter = "";
|
||||||
var param = serie.context.param;
|
var newItemFormatter = itemFormatter.Replace("\\n", "\n");
|
||||||
|
var newNumericFormatter = SerieHelper.GetNumericFormatter(serie, serieData, numericFormatter);
|
||||||
|
var temp = newItemFormatter.Split('\n');
|
||||||
|
for (int i = 0; i < temp.Length; i++)
|
||||||
|
{
|
||||||
|
var formatter = temp[i];
|
||||||
|
var param = i == 0 ? serie.context.param : new SerieParams();
|
||||||
param.serieName = serie.serieName;
|
param.serieName = serie.serieName;
|
||||||
param.serieIndex = serie.index;
|
param.serieIndex = serie.index;
|
||||||
param.category = category;
|
param.category = category;
|
||||||
@@ -682,8 +688,8 @@ namespace XCharts.Runtime
|
|||||||
param.total = serie.yTotal;
|
param.total = serie.yTotal;
|
||||||
param.color = chart.GetMarkColor(serie, serieData);
|
param.color = chart.GetMarkColor(serie, serieData);
|
||||||
param.marker = SerieHelper.GetItemMarker(serie, serieData, marker);
|
param.marker = SerieHelper.GetItemMarker(serie, serieData, marker);
|
||||||
param.itemFormatter = itemFormatter;
|
param.itemFormatter = formatter;
|
||||||
param.numericFormatter = SerieHelper.GetNumericFormatter(serie, serieData, numericFormatter);
|
param.numericFormatter = newNumericFormatter;
|
||||||
param.columns.Clear();
|
param.columns.Clear();
|
||||||
|
|
||||||
param.columns.Add(param.marker);
|
param.columns.Add(param.marker);
|
||||||
@@ -692,6 +698,7 @@ namespace XCharts.Runtime
|
|||||||
|
|
||||||
paramList.Add(param);
|
paramList.Add(param);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
protected void UpdateItemSerieParams(ref List<SerieParams> paramList, ref string title,
|
protected void UpdateItemSerieParams(ref List<SerieParams> paramList, ref string title,
|
||||||
int dataIndex, string category, string marker,
|
int dataIndex, string category, string marker,
|
||||||
@@ -721,7 +728,17 @@ namespace XCharts.Runtime
|
|||||||
|
|
||||||
Color32 color, toColor;
|
Color32 color, toColor;
|
||||||
SerieHelper.GetItemColor(out color, out toColor, serie, serieData, chart.theme, colorIndex, SerieState.Normal);
|
SerieHelper.GetItemColor(out color, out toColor, serie, serieData, chart.theme, colorIndex, SerieState.Normal);
|
||||||
var param = serie.context.param;
|
|
||||||
|
if (itemFormatter == null) itemFormatter = "";
|
||||||
|
var newItemFormatter = itemFormatter.Replace("\\n", "\n");
|
||||||
|
var newNumericFormatter = SerieHelper.GetNumericFormatter(serie, serieData, numericFormatter);
|
||||||
|
var temp = newItemFormatter.Split('\n');
|
||||||
|
var mark = SerieHelper.GetItemMarker(serie, serieData, marker);
|
||||||
|
var total = serie.multiDimensionLabel ? serieData.GetTotalData() : serie.GetDataTotal(defaultDimension);
|
||||||
|
for (int i = 0; i < temp.Length; i++)
|
||||||
|
{
|
||||||
|
var formatter = temp[i];
|
||||||
|
var param = i == 0 ? serie.context.param : new SerieParams();
|
||||||
param.serieName = serie.serieName;
|
param.serieName = serie.serieName;
|
||||||
param.serieIndex = serie.index;
|
param.serieIndex = serie.index;
|
||||||
|
|
||||||
@@ -731,11 +748,11 @@ namespace XCharts.Runtime
|
|||||||
param.dataCount = serie.dataCount;
|
param.dataCount = serie.dataCount;
|
||||||
param.value = serieData.GetData(param.dimension);
|
param.value = serieData.GetData(param.dimension);
|
||||||
param.ignore = ignore;
|
param.ignore = ignore;
|
||||||
param.total = serie.multiDimensionLabel ? serieData.GetTotalData() : serie.GetDataTotal(defaultDimension);
|
param.total = total;
|
||||||
param.color = color;
|
param.color = color;
|
||||||
param.marker = SerieHelper.GetItemMarker(serie, serieData, marker);
|
param.marker = mark;
|
||||||
param.itemFormatter = itemFormatter;
|
param.itemFormatter = formatter;
|
||||||
param.numericFormatter = SerieHelper.GetNumericFormatter(serie, serieData, numericFormatter);
|
param.numericFormatter = newNumericFormatter;
|
||||||
param.columns.Clear();
|
param.columns.Clear();
|
||||||
|
|
||||||
param.columns.Add(param.marker);
|
param.columns.Add(param.marker);
|
||||||
@@ -745,6 +762,7 @@ namespace XCharts.Runtime
|
|||||||
|
|
||||||
paramList.Add(param);
|
paramList.Add(param);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public void DrawLabelLineSymbol(VertexHelper vh, LabelLine labelLine, Vector3 startPos, Vector3 endPos, Color32 defaultColor)
|
public void DrawLabelLineSymbol(VertexHelper vh, LabelLine labelLine, Vector3 startPos, Vector3 endPos, Color32 defaultColor)
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user