C# MS图表雷达轴频率
我想在WinForms应用程序中使用MS chart控件绘制雷达图 这个图表包含1天的数据,我有每秒钟的数据,所以我有86400个x-y值对。X轴包含日期,y轴包含我的int值 我的测试代码如下:C# MS图表雷达轴频率,c#,winforms,mschart,radar-chart,C#,Winforms,Mschart,Radar Chart,我想在WinForms应用程序中使用MS chart控件绘制雷达图 这个图表包含1天的数据,我有每秒钟的数据,所以我有86400个x-y值对。X轴包含日期,y轴包含我的int值 我的测试代码如下: var fromDate = new DateTime(DateTime.Now.Year, DateTime.Now.Month, D
var fromDate = new DateTime(DateTime.Now.Year,
DateTime.Now.Month,
DateTime.Now.Day,
0,
0,
0);
var toDate = new DateTime(DateTime.Now.Year,
DateTime.Now.Month,
DateTime.Now.Day,
23,
59,
59);
List<DateTime> xValues = new List<DateTime>();
List<double> yValues = new List<double>();
var iterDate = fromDate;
var i = 0;
while (iterDate <= toDate)
{
xValues.Add(iterDate);
yValues.Add(i);
iterDate = iterDate.AddSeconds(1);
i++;
}
chart1.Series["Default"].Points.DataBindXY(xValues, yValues);
var dateLabelStyle = new LabelStyle();
dateLabelStyle.Format = "HH:mm:ss";
chart1.ChartAreas["Default"].AxisX.LabelStyle = dateLabelStyle;
chart1.ChartAreas["Default"].AxisX.Minimum = fromDate.ToOADate();
chart1.ChartAreas["Default"].AxisX.Maximum = toDate.ToOADate();
chart1.Series["Default"].IsXValueIndexed = true;
chart1.Series["Default"].ChartType = SeriesChartType.Radar;
chart1.Series["Default"]["RadarDrawingStyle"] = "Line";
chart1.Series["Default"]["AreaDrawingStyle"] = "Circle";
chart1.Series["Default"]["CircularLabelsStyle"] = "Horizontal";
chart1.ChartAreas["Default"].Area3DStyle.Enable3D = false;
var fromDate=new DateTime(DateTime.Now.Year,
DateTime.Now.Month,
DateTime.Now.Day,
0,
0,
0);
var toDate=新日期时间(DateTime.Now.Year,
DateTime.Now.Month,
DateTime.Now.Day,
23,
59,
59);
List xValues=新列表();
List yValues=新列表();
var iterDate=起始日期;
var i=0;
而(iterDate你可能想用“极地”图而不是“雷达”。类似的东西会让你更接近你想要的,我想:
chart1.Series["Default"].ChartType = SeriesChartType.Polar;
chart1.Series[0]["PolarDrawingStyle"] = "Line";
// setup the X grid
chart1.ChartAreas["Default"].AxisX.MajorGrid.Enabled = true;
chart1.ChartAreas["Default"].AxisX.MajorGrid.IntervalType = DateTimeIntervalType.Hours;
chart1.ChartAreas["Default"].AxisX.MajorGrid.Interval = 1;
chart1.ChartAreas["Default"].AxisX.Crossing = 0;
// setupthe Y grid
chart1.ChartAreas["Default"].AxisY.MajorGrid.Enabled = true;