G2 图表示例
源码
g2-react
x
 
1
<!DOCTYPE html>
2
<html>
3
  <head>
4
    <meta charset="utf-8">
5
    <title>色块图</title>
6
    <script src="https://a.alipayobjects.com/jquery/jquery/1.11.1/jquery.js"></script>
7
    <script src="https://gw.alipayobjects.com/as/g/datavis/g2/2.3.13/index.js"></script>
8
  </head>
9
  <body>
10
    <div id="c1"></div>
11
    <script>
12
      var data = [[0, 0, 10], [0, 1, 19], [0, 2, 8], [0, 3, 24], [0, 4, 67], [1, 0, 92], [1, 1, 58], [1, 2, 78], [1, 3, 117], [1, 4, 48], [2, 0, 35], [2, 1, 15], [2, 2, 123], [2, 3, 64], [2, 4, 52], [3, 0, 72], [3, 1, 132], [3, 2, 114], [3, 3, 19], [3, 4, 16], [4, 0, 38], [4, 1, 5], [4, 2, 8], [4, 3, 117], [4, 4, 115], [5, 0, 88], [5, 1, 32], [5, 2, 12], [5, 3, 6], [5, 4, 120], [6, 0, 13], [6, 1, 44], [6, 2, 88], [6, 3, 98], [6, 4, 96], [7, 0, 31], [7, 1, 1], [7, 2, 82], [7, 3, 32], [7, 4, 30], [8, 0, 85], [8, 1, 97], [8, 2, 123], [8, 3, 64], [8, 4, 84], [9, 0, 47], [9, 1, 114], [9, 2, 31], [9, 3, 48], [9, 4, 91]];
13
      var source = [];
14
      for(var i = 0; i < data.length; i ++) {
15
        var item = data[i];
16
        var obj = {};
17
        obj.name = item[0];
18
        obj.day = item[1];
19
        obj.sales = item[2];
20
        source.push(obj);
21
      }
22
      var chart = new G2.Chart({
23
        id: 'c1',
24
        forceFit: true,
25
        height: 450,
26
        plotCfg: {
27
          margin: [20, 80, 60, 85]
28
        }
29
      });
30
      chart.source(source, {
31
        name: {
32
          type: 'cat',
33
          values: ['Alexander', 'Marie', 'Maximilian', 'Sophia', 'Lukas', 'Maria', 'Leon', 'Anna', 'Tim', 'Laura']
34
        },
35
        day: {
36
          type: 'cat',
37
          values: ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday']
38
        }
39
      });
40
      chart.axis('name', {
41
        title: null,
42
        grid: {
43
          line: {
44
            stroke: '#d9d9d9',
45
            lineWidth: 1,
46
            lineDash: [2, 2]
47
          }
48
        }
49
      });
50
      chart.axis('day', {
51
        title: null
52
      });
53
      chart.polygon()
54
        .position('name*day')
55
        .color('sales', '#f6f6f6-#36B3C3')
56
        .label('sales', {
57
        offset: -2,
58
        label: {
59
          fill: '#444',
60
          fontWeight: 'bold'
61
        }
62
      })
63
        .style({
64
        lineWidth: 1,
65
        stroke: '#fff'
66
      });
67
      chart.render();
68
    </script>
69
  </body>
70
</html>
71

色块图

色块图,由小色块有序且紧凑的组成的图表。色块图的最大好处是,2维画布上的空间利用率非常高。理论上小色块的大小是可以等于硬件像素的大小。 了解更多