• Highmaps网页图表教程之Highmaps第一个实例与图表构成


    Highmaps网页图表教程之Highmaps第一个实例与图表构成

    Highmaps第一个实例

    下面我们来实现本教程的第一个Highmaps实例。

    【实例1-1:hellomap】下面来制作一个中国地图的图表。操作过程如下:

    (1)新建一个网页文件,命名为Hellomap。同时将title设置Hello Highmaps。代码如下:

     

    • <html lang="en" xmlns="http://www.w3.org/1999/xhtml">
    • <head>
    •     <meta charset="utf-8" />
    •     <title>Hello Highmaps</title>
    •     <style type="text/css">
    •         #container {
    •             500px;
    •             height:500px;
    •             border:1px solid #000;
    •             padding :0px;
    •             margin:10px;
    •         }
    •     </style>
    • </head>
    • <body>
    • </body>
    • </html>

    (2)在网页中添加一个div,设置id为container。

     

    •     <div id="container"></div>

    (3)设置该div的样式,代码如下:

     

    •     <style type="text/css">
    •         #container {
    •             500px;
    •             height:500px;
    •             border:1px solid #000;
    •             padding :0px;
    •             margin:10px;
    •         }
    •     </style>

    (4)引去jQuery脚本和Highmaps脚本,代码如下:

     

    •     <script src="jquery.js"></script>
    •     <script src="highmaps.js"></script>

    (5)引入地图数据,这里使用的是从Highmaps官网下载的地图数据。代码如下:

     

    •     <script src="cn-all-sar-taiwan.js"></script>

    (6)添加地图绘制代码。代码如下:

     

    •     <script type="text/javascript">
    •         $(document).ready(function () {
    •             var options = {
    •                 chart: {
    •                 },
    •                 mapNavigation: {
    •                     enabled: true
    •                 },
    •                 title: {
    •                     text: '地图'
    •                 },
    •                 subtitle: {
    •                     text: '临时数据'
    •                 },
    •                 series: [{
    •                     name:'省份',
    •                     mapData: Highcharts.maps['countries/cn/custom/cn-all-sar-taiwan'],
    •                     joinBy:'hc-key',
    •                     data: [{
    •                         'hc-key': 'cn-zj',
    •                         value:22
    •                     }, {
    •                         'hc-key': 'cn-sx',
    •                         value:50
    •                     }],
    •                     dataLabels: {
    •                         enabled: true,
    •                         crop: false,
    •                         overflow: 'none',                      
    •                     }
    •                 }],
    •                 credits: {
    •                     text: '大学霸',
    •                     href: 'http://daxueba.net'
    •                 }
    •             };
    •             $('#container').highcharts('Map',options);
    •         });
    •     </script>

    保存以上文件,运行结果如图1.9所示。

     

    图1.9  第一个Highmaps实例

    Highmaps图表构成

    为了方便大家更好了解Highmaps图表,这里从界面和代码两个角度讲解Highmaps地图的实现方式。

    Highmaps界面构成

    在第一个实例中,虽然我们编写的代码很少,但是Highmaps却为我们生成了非常完整的地图图表。在这个图表中,除了显示地图以外,还显示了很多辅助图表元素,如图1.10所示。这些辅助元素包括标题、副标题、缩放按钮、提示框、数据标签、图例和版权信息。下面简要讲解这些元素的作用。

     

    • q  标题/副标题:用来简要说明图表所要表达的内容,帮助浏览者快速了解图表的重点。
    • q  缩放按钮:用来放大和缩小地图,帮助浏览者更清楚的了解地图细节。
    • q  提示框:当鼠标悬浮在有数据的节点上,就会以弹出的形式显示节点的相关信息。
    • q  数据标签:以静态的形式显示节点数值,由于空间有限,很多时候数据标签会被隐藏。
    • q  图例:用来数据的种类,尤其当图中包含多类数据的时候。同时,浏览者可以通过单击图例的方式,选中某一些数据,或者取消某一类的数据的显示。
    • q  版权信息:用来说明图表所有者信息。

     

    图1.10  辅助图表元素

    Highmaps代码构成

    虽然我们在第一个实例中并没有编写多少代码,但图1.9却展现丰富的内容。这充分的体现了Highmaps使用的便捷性。实现Highmaps图表实际分为两个步骤,依次讲解。

    1.图表配置项对象

    Highmaps核心主体就是图表配置项对象。该对象包含了图表的各类数据和配置信息。每个部分往往都是由更小的配置项对象组成。用户只要按照规范的格式,填写对应的数据和配置值,就可以。整个过程就像搭建积木一样。下面对第一个实例的配置项对象做简要介绍。

     

    •             var options = {
    •                 chart: {                                                          //图表的基本信息配置项
    •                 },
    •                 mapNavigation: {                                       //导航功能
    •                     enabled: true                                       //启用导航功能
    •                 },
    •                 title: {                                                             //标题
    •                     text: '地图'                                             //设置标题文本
    •                 },
    •                 subtitle: {                                                      //副标题
    •                     text: '临时数据'                                     //设置副标题
    •                 },
    •                 series: [{                                                       //定义数据列
    •                     name:'省份',                                         //数据列的名字
    •                     mapData: Highcharts.maps['countries/cn/custom/cn-all-sar-taiwan'],      //地图数据来源
    •                     joinBy:'hc-key',                                    //设置节点与地图关联模式
    •                     data: [{                                                  //节点数据
    •                         'hc-key': 'cn-zj',
    •                         value:22
    •                     }, {
    •                         'hc-key': 'cn-sx',
    •                         value:50
    •                     }],
    •                     dataLabels: {                                       //数据标签
    •                         enabled: true,
    •                         crop: false,
    •                         overflow: 'none',                      
    •                     }
    •                 }],
    •                 credits: {                                                       //版权信息
    •                     text: '大学霸',
    •                     href: 'http://daxueba.net'
    •                 }
    •             };

    从代码中可以看出,界面中的每个部分都对应代码中的一个小模块。这样,便于用户构建图表,并进行后期的调试。

    2.在容器中绘制图表

    在指定好配置项对象后,用户就可以使用Highmaps插件提供的higcharts方法在指定的容器中绘制图表。需要的代码只需要以下一行。

     

    • $('#container').highcharts('Map',options);

    只需要以上两个步骤,就可以在现有的网页中绘制出图1.9所示的图表了。用户对图表进行扩展,只需要修改图表配置对象即可。

    本文选自:Highmaps网页图表基础教程大学霸内部资料,转载请注明出处,尊重技术尊重IT人!

  • 相关阅读:
    python3实现感知器,简单神经网络
    jupyter快捷键
    吴恩实验(神经网络和深度学习)第一课第三周,代码和数据集,亲测可运行
    windows下安装PyTorch0.4.0
    IDEA上传码云报错Push rejected: Push to origin/master was rejected
    IDEA常见设置
    pycharm同级目录导入问题
    解决jupyter中无自己创建的虚拟环境
    tensorflow_mmp
    python GUI
  • 原文地址:https://www.cnblogs.com/daxueba-ITdaren/p/4727427.html
Copyright © 2020-2023  润新知