当前位置: 移动技术网 > IT编程>开发语言>.net > devexpress chart 散点图加载并分组显示(可以自定义颜色 同组中的点颜色相同)

devexpress chart 散点图加载并分组显示(可以自定义颜色 同组中的点颜色相同)

2018年09月12日  | 移动技术网IT编程  | 我要评论

刘志军弟弟,民营企业现状,凤之情殇

this.dchart.diagram.series.clear();//清空图的内容
var groups = result.groupby(itm => itm["flag"]);//将result根据flag属性分组 result是要显示为散点图的数据内容
foreach (var group in groups)
{
var t = group.first();
pointseries2d series = new pointseries2d() //新建散点图组
{
name = t["flag"].tostring(),
brush = new solidcolorbrush(colors.blue),//颜色
displayname = t["flagname"].tostring(),//显示内容
animationautostartmode = animationautostartmode.playonce,
markersize = 8 /*显示点的大小*/,
markermodel = new ringmarker2dmodel(),
crosshairenabled = true,
crosshairlabelvisibility = true,
crosshairlabelpattern = "{s}\n时间:{a}\n水位:{v}m",//鼠标滑过显示的内容
};
int flag = convert.toint32(group.key);//group.key就是上边根据分组的属性
switch (flag)//自定义颜色
{
case 0: series.brush = new solidcolorbrush(colors.blue); break;
case 1: series.brush = new solidcolorbrush(colors.green); break;
case 2: series.brush = new solidcolorbrush(colors.yellow); break;
case 3: series.brush = new solidcolorbrush(colors.red); break;
default: break;
}
var source = group.tolist();
foreach (var s in source)//将数据内容赋值到点上
{
if (s["a"] == null || string.isnullorempty(s["a"].tostring()))//判断空值
continue;

double z = convert.todouble(s["a"]);
datetime tm = convert.todatetime(s["tm"]);
series.points.add(new seriespoint(tm, z));//将点加入
}
dchart.diagram.series.add(series);//将散点组赋值给图的数据源
}

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网