技术图文:如何利用C# + Echarts 绘制 Bar Simple?

背景

Echarts 是百度推出的一个使用 JavaScript 实现的开源可视化库。 该库提供了常规的折线图、柱状图、散点图、饼图、K线图,用于统计的盒形图,用于地理数据可视化的地图、热力图、线图,用于关系数据可视化的关系图、treemap、旭日图,多维数据可视化的平行坐标,还有用于 BI 的漏斗图,仪表盘,并且支持图与图之间的混搭。

既然 提供了丰富的图形,所以咱们有必要把它封装起来,以便让其支持 Windows 窗体应用程序。


技术分析

整体的技术方案就是做一个自定义控件,该控件中包含 WebBrowser 浏览器控件,通过该浏览器控件显示指定位置的 页。就像咱们直接通过 Web 浏览器 页一样。具体的步骤如下:

首先,创建一个在 Windows 窗体应用程序中使用的控件项目 。

其次,在该控件项目的设计器中,拖入一个 WebBrowser 控件,并设置其 属性为 ,即让 WebBrowser 充满整个容器。

接着,写一个 方法,加载指定目录的 页,让该 页在 WebBrowser 中打开。

当该 页加载完成后,触发 WebBrowser 的 事件,在该事件注册的方法中调用该 页中用 JS 写的 方法,则在该 页中显示图形。

当窗体控件的尺寸发生变化后,触发 WebBrowser 的 事件,在该事件注册的方法中调用该 页中用 JS 写的 方法,则重新调整显示图形的布局,以满足新的尺寸。

类的常用属性、事件与方法

属性

事件

方法

类的常用方法


代码实现

Step1:创建一个用于显示图形的 页

初始显示的 页

显示图形时调用的 JS 代码

当控件的尺寸发生变化时调用的 JS 代码

Step2:创建自定义控件 Echarts

初始化 Echarts 控件的方法

当 在 WebBrowser 内加载完成之后执行的方法

当控件 Echarts 尺寸发生变化之后执行的方法

private void webBrowserMain_SizeChanged(object sender, EventArgs e){    if (_isDocumentLoaded)    {object[] objArray = new object[] {Height};HtmlDocument htmlDocument = webBrowserMain.Document;if (htmlDocument != null){    htmlDocument.InvokeSc

                                                        

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2019年4月28日
下一篇 2019年4月28日

相关推荐