WPF实现大数据分析结果展示(转)

link: https://www.cnblogs.com/luoyuhao/p/12127588.html

开头语

        经过一段时间研究,终于实现CS和BS相同效果的大数据展示平台了。首先来看看实现的效果,超炫的效果,客户特别喜欢,个人也非常满意,分享给各位,同大家一起交流学习。

大数据展示平台

从上图可以看出,分为左中右三栏,左右主要是展示图标为主,中间部分展示地图,这种展示主要使用于物流行业,亮点是中间的地图,物流覆盖的地方和线路在地图中显示的淋漓尽致,效果非常炫,用WPF去现实的,图片进行切片,研究了四个晚上做了这效果。

按快捷键Ctrl+F1可以对数据库进行设置

按快捷键Ctrl+F2可以对系统标题,企业愿景和公司最新动态,公司公告和地图的颜色和线路进行设置,这样就适用于大多数客户。

这样即可完全自定义了,适应于多个客户,由于我公司是很多客户的,所以必须进行公版话,进行自定义设置,这里就适用于很多了客户了。

实现代码

数据获取代码就不再展示了,下面分享下部分代码,首先是地图部分,由Canvas去画线就好了,这样就生成了地图。

  View Code

地图上的从一点到另一个点进行画线代码如下:

  View Code

左右两边用到的图标是用Visifire.Charts.dll去实现的,网上也有非常多的例子,其实CS的图表没有BS实现出来的那么美观,对图表的也研究了很久,未发现比较好用的图表控件,你有好的图表控件推荐吗?

例如折线图:

  View Code

 

柱状图:

  View Code

 同时还适用了定时刷新数据,频率为分钟,晚上8:00到早上7:00不刷新数据,这样减少服务器压力。

private DispatcherTimer RefreshDataTimer = null;

 RefreshDataTimer = new DispatcherTimer();
 RefreshDataTimer.Tick += new EventHandler(OnDataEvent);
 RefreshDataTimer.Interval = new TimeSpan(0, 5, 0);//5分钟一刷新
 RefreshDataTimer.Start();
复制代码
  //获取当前系统时间并判断是否为服务时间
            TimeSpan nowDt = DateTime.Now.TimeOfDay;

            TimeSpan workStartDT = DateTime.Parse("20:00").TimeOfDay;
            TimeSpan workEndDT = DateTime.Parse("08:00").TimeOfDay;
            if (nowDt > workStartDT && nowDt < workEndDT)
            {
                getdata();
            }
复制代码

以上说明了大概的实现思路。

 结束语

       现在大数据分析在我们日常开发软件中经常遇到,一旦有了这个经常会给软件打上高大上的标签,客户很青睐,报价多个一两万轻而易举的事情,后续还需继续完善,在市场上会越来越多的大屏展示数据有我们这样的软件出现。

程序文件:https://files.cnblogs.com/files/luoyuhao/%E5%A4%A7%E6%95%B0%E6%8D%AE%E5%B9%B3%E5%8F%B0.rar

猜你喜欢

转载自www.cnblogs.com/xiexiaokui/p/12150711.html