using UnityEngine;
namespace XCharts.Runtime
{
///
/// Line chart relates all the data points symbol by broken lines, which is used to show the trend of data changing.
/// It could be used in both rectangular coordinate andpolar coordinate.
/// ||折线图是用折线将各个数据点标志连接起来的图表,用于展现数据的变化趋势。可用于直角坐标系和极坐标系上。
/// 设置 areaStyle 后可以绘制面积图。
///
[AddComponentMenu("XCharts/LineChart", 13)]
[ExecuteInEditMode]
[RequireComponent(typeof(RectTransform))]
[DisallowMultipleComponent]
[HelpURL("https://xcharts-team.github.io/docs/configuration")]
public class LineChart : BaseChart
{
protected override void DefaultChart()
{
EnsureChartComponent();
EnsureChartComponent();
EnsureChartComponent();
RemoveData();
Line.AddDefaultSerie(this, GenerateDefaultSerieName());
for (int i = 0; i < 5; i++)
{
AddXAxisData("x" + (i + 1));
}
}
///
/// default area line chart.
/// || 默认面积折线图。
///
public void DefaultAreaLineChart()
{
CheckChartInit();
var serie = GetSerie(0);
if (serie == null) return;
serie.EnsureComponent();
}
///
/// default smooth line chart.
/// || 默认平滑折线图。
///
public void DefaultSmoothLineChart()
{
CheckChartInit();
var serie = GetSerie(0);
if (serie == null) return;
serie.lineType = LineType.Smooth;
}
///
/// default smooth area line chart.
/// || 默认平滑面积折线图。
///
public void DefaultSmoothAreaLineChart()
{
CheckChartInit();
var serie = GetSerie(0);
if (serie == null) return;
serie.EnsureComponent();
serie.lineType = LineType.Smooth;
}
///
/// default stack line chart.
/// || 默认堆叠折线图。
///
public void DefaultStackLineChart()
{
CheckChartInit();
var serie1 = GetSerie(0);
if (serie1 == null) return;
serie1.stack = "stack1";
var serie2 = Line.AddDefaultSerie(this, GenerateDefaultSerieName());
serie2.stack = "stack1";
}
///
/// default stack area line chart.
/// || 默认堆叠面积折线图。
///
public void DefaultStackAreaLineChart()
{
CheckChartInit();
var serie1 = GetSerie(0);
if (serie1 == null) return;
serie1.EnsureComponent();
serie1.stack = "stack1";
var serie2 = Line.AddDefaultSerie(this, GenerateDefaultSerieName());
serie2.EnsureComponent();
serie2.stack = "stack1";
}
///
/// default step line chart.
/// || 默认阶梯折线图。
///
public void DefaultStepLineChart()
{
CheckChartInit();
var serie = GetSerie(0);
if (serie == null) return;
serie.lineType = LineType.StepMiddle;
}
///
/// default dash line chart.
/// || 默认虚线折线图。
///
public void DefaultDashLineChart()
{
CheckChartInit();
var serie = GetSerie(0);
if (serie == null) return;
serie.lineType = LineType.Normal;
serie.lineStyle.type = LineStyle.Type.Dashed;
}
///
/// default time line chart.
/// || 默认时间折线图。
///
public void DefaultTimeLineChart()
{
CheckChartInit();
var xAxis = GetChartComponent();
xAxis.type = Axis.AxisType.Time;
}
///
/// default logarithmic line chart.
/// || 默认对数轴折线图。
///
public void DefaultLogLineChart()
{
CheckChartInit();
var yAxis = GetChartComponent();
yAxis.type = Axis.AxisType.Log;
}
}
}