protected override void RefreshTooltip() { var xData = m_Tooltip.runtimeXValues[0]; var yData = m_Tooltip.runtimeYValues[0]; if (IsCategory() && (xData < 0 || yData < 0)) { return; } sb.Length = 0; for (int i = 0; i < m_Series.Count; i++) { var serie = m_Series.GetSerie(i); var xAxis = m_XAxises[serie.axisIndex]; var yAxis = m_YAxises[serie.axisIndex]; var xCount = xAxis.data.Count; var yCount = yAxis.data.Count; if (serie.show && serie.type == SerieType.Heatmap) { if (IsCategory()) { string key = serie.name; var serieData = serie.data[(int)xData * yCount + (int)yData]; var value = serieData.data[2]; var color = m_VisualMap.enable ? m_VisualMap.GetColor(value) : (Color)m_ThemeInfo.GetColor(serie.index); sb.Append("\n") .Append(key).Append(!string.IsNullOrEmpty(key) ? "\n" : "") .Append("<color=#").Append(ChartCached.ColorToStr(color)).Append(">● </color>") .Append(xAxis.data[(int)xData]).Append(": ") .Append(ChartCached.FloatToStr(value)); } } } m_Tooltip.UpdateContentText(sb.ToString().Trim()); var pos = m_Tooltip.GetContentPos(); if (pos.x + m_Tooltip.runtimeWidth > chartWidth) { pos.x = chartWidth - m_Tooltip.runtimeWidth; } if (pos.y - m_Tooltip.runtimeHeight < 0) { pos.y = m_Tooltip.runtimeHeight; } m_Tooltip.UpdateContentPos(pos); m_Tooltip.SetActive(true); for (int i = 0; i < m_XAxises.Count; i++) { UpdateAxisTooltipLabel(i, m_XAxises[i]); } for (int i = 0; i < m_YAxises.Count; i++) { UpdateAxisTooltipLabel(i, m_YAxises[i]); } }
protected override void UpdateTooltip() { var xData = m_Tooltip.runtimeXValues[0]; var yData = m_Tooltip.runtimeYValues[0]; if (IsCategory() && (xData < 0 || yData < 0)) { return; } sb.Length = 0; for (int i = 0; i < m_Series.Count; i++) { var serie = m_Series.GetSerie(i); var xAxis = m_XAxises[serie.axisIndex]; var yAxis = m_YAxises[serie.axisIndex]; var xCount = xAxis.data.Count; var yCount = yAxis.data.Count; if (serie.show && serie.type == SerieType.Heatmap) { if (IsCategory()) { string key = serie.name; var serieData = serie.data[(int)xData * yCount + (int)yData]; var value = serieData.data[2]; var color = m_VisualMap.enable ? m_VisualMap.GetColor(value) : (Color)m_ThemeInfo.GetColor(serie.index); sb.Append("\n") .Append(key).Append(!string.IsNullOrEmpty(key) ? "\n" : "") .Append("<color=#").Append(ChartCached.ColorToStr(color)).Append(">● </color>") .Append(xAxis.data[(int)xData]).Append(": ") .Append(ChartCached.FloatToStr(value, string.Empty)); } } } TooltipHelper.SetContentAndPosition(tooltip, sb.ToString().Trim(), chartRect); m_Tooltip.SetActive(true); for (int i = 0; i < m_XAxises.Count; i++) { UpdateAxisTooltipLabel(i, m_XAxises[i]); } for (int i = 0; i < m_YAxises.Count; i++) { UpdateAxisTooltipLabel(i, m_YAxises[i]); } }