mirror of
https://github.com/XCharts-Team/XCharts.git
synced 2026-05-14 20:00:09 +00:00
增加DataZoom的最小显示数据个数minShowNum
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
|
||||
# 更新日志
|
||||
|
||||
* (2019.12.21) 增加`DataZoom`的最小显示数据个数`minShowNum`
|
||||
* (2019.12.20) 增加`Demo40_Radar.cs`雷达图代码操作`Demo`
|
||||
* (2019.12.20) 添加`RadarChart`相关API接口
|
||||
* (2019.12.17) 发布`v1.1.0`版本
|
||||
|
||||
@@ -219,6 +219,7 @@
|
||||
* `scrollSensitivity`:缩放区域组件的敏感度。值越高每次缩放所代表的数据越多。
|
||||
* `fontSize`:字体大小。
|
||||
* `fontStyle`:字体样式。
|
||||
* `minShowNum`:最小显示数据个数。当DataZoom放大到最大时,最小显示的数据个数。
|
||||
|
||||
## `VisualMap`
|
||||
|
||||
|
||||
@@ -35,6 +35,7 @@ namespace XCharts
|
||||
SerializedProperty m_RangeMode = prop.FindPropertyRelative("m_RangeMode");
|
||||
SerializedProperty m_Start = prop.FindPropertyRelative("m_Start");
|
||||
SerializedProperty m_End = prop.FindPropertyRelative("m_End");
|
||||
SerializedProperty m_MinShowNum = prop.FindPropertyRelative("m_MinShowNum");
|
||||
SerializedProperty m_ScrollSensitivity = prop.FindPropertyRelative("m_ScrollSensitivity");
|
||||
SerializedProperty m_FontSize = prop.FindPropertyRelative("m_FontSize");
|
||||
SerializedProperty m_FontStyle = prop.FindPropertyRelative("m_FontStyle");
|
||||
@@ -79,8 +80,11 @@ namespace XCharts
|
||||
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
|
||||
EditorGUI.PropertyField(drawRect, m_End);
|
||||
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
|
||||
EditorGUI.PropertyField(drawRect, m_MinShowNum);
|
||||
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
|
||||
if (m_Start.floatValue < 0) m_Start.floatValue = 0;
|
||||
if (m_End.floatValue > 100) m_End.floatValue = 100;
|
||||
if (m_MinShowNum.intValue < 0) m_MinShowNum.intValue = 0;
|
||||
--EditorGUI.indentLevel;
|
||||
}
|
||||
}
|
||||
@@ -91,7 +95,7 @@ namespace XCharts
|
||||
int num = 1;
|
||||
if (m_DataZoomModuleToggle)
|
||||
{
|
||||
num += 7;
|
||||
num += 8;
|
||||
if (prop.FindPropertyRelative("m_SupportSlider").boolValue) num += 6;
|
||||
|
||||
}
|
||||
|
||||
@@ -267,6 +267,7 @@ namespace XCharts
|
||||
|
||||
private int filterStart;
|
||||
private int filterEnd;
|
||||
private int filterMinShow;
|
||||
private List<string> filterData;
|
||||
private List<Text> m_AxisLabelTextList = new List<Text>();
|
||||
private GameObject m_TooltipLabel;
|
||||
@@ -389,14 +390,17 @@ namespace XCharts
|
||||
{
|
||||
var startIndex = (int)((data.Count - 1) * dataZoom.start / 100);
|
||||
var endIndex = (int)((data.Count - 1) * dataZoom.end / 100);
|
||||
if (startIndex != filterStart || endIndex != filterEnd || m_NeedUpdateFilterData)
|
||||
if (startIndex != filterStart || endIndex != filterEnd || dataZoom.minShowNum != filterMinShow || m_NeedUpdateFilterData)
|
||||
{
|
||||
filterStart = startIndex;
|
||||
filterEnd = endIndex;
|
||||
filterMinShow = dataZoom.minShowNum;
|
||||
m_NeedUpdateFilterData = false;
|
||||
if (m_Data.Count > 0)
|
||||
{
|
||||
var count = endIndex == startIndex ? 1 : endIndex - startIndex + 1;
|
||||
if (count < dataZoom.minShowNum) count = dataZoom.minShowNum;
|
||||
if (startIndex + count > m_Data.Count - 1) count = m_Data.Count - 1 - startIndex;
|
||||
filterData = m_Data.GetRange(startIndex, count);
|
||||
}
|
||||
else
|
||||
|
||||
@@ -251,6 +251,7 @@ namespace XCharts
|
||||
|
||||
[NonSerialized] private int m_FilterStart;
|
||||
[NonSerialized] private int m_FilterEnd;
|
||||
[NonSerialized] private int m_FilterMinShow;
|
||||
[NonSerialized] private List<SerieData> m_FilterData;
|
||||
[NonSerialized] private Dictionary<int, List<Vector3>> m_UpSmoothPoints = new Dictionary<int, List<Vector3>>();
|
||||
[NonSerialized] private Dictionary<int, List<Vector3>> m_DownSmoothPoints = new Dictionary<int, List<Vector3>>();
|
||||
@@ -965,14 +966,17 @@ namespace XCharts
|
||||
{
|
||||
var startIndex = (int)((data.Count - 1) * dataZoom.start / 100);
|
||||
var endIndex = (int)((data.Count - 1) * dataZoom.end / 100);
|
||||
if (startIndex != m_FilterStart || endIndex != m_FilterEnd || m_NeedUpdateFilterData)
|
||||
if (startIndex != m_FilterStart || endIndex != m_FilterEnd || dataZoom.minShowNum != m_FilterMinShow || m_NeedUpdateFilterData)
|
||||
{
|
||||
m_FilterStart = startIndex;
|
||||
m_FilterEnd = endIndex;
|
||||
m_FilterMinShow = dataZoom.minShowNum;
|
||||
m_NeedUpdateFilterData = false;
|
||||
var count = endIndex == startIndex ? 1 : endIndex - startIndex + 1;
|
||||
if (count < dataZoom.minShowNum) count = dataZoom.minShowNum;
|
||||
if (m_Data.Count > 0)
|
||||
{
|
||||
if (startIndex + count > m_Data.Count - 1) count = m_Data.Count - 1 - startIndex;
|
||||
m_FilterData = m_Data.GetRange(startIndex, count);
|
||||
}
|
||||
else
|
||||
|
||||
Reference in New Issue
Block a user