Blame view

node_modules/echarts/lib/coord/cartesian/AxisModel.js 3.06 KB
aaac7fed   liuqimichale   add
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
  
  /*
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
  * distributed with this work for additional information
  * regarding copyright ownership.  The ASF licenses this file
  * to you under the Apache License, Version 2.0 (the
  * "License"); you may not use this file except in compliance
  * with the License.  You may obtain a copy of the License at
  *
  *   http://www.apache.org/licenses/LICENSE-2.0
  *
  * Unless required by applicable law or agreed to in writing,
  * software distributed under the License is distributed on an
  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  * KIND, either express or implied.  See the License for the
  * specific language governing permissions and limitations
  * under the License.
  */
  
  var zrUtil = require("zrender/lib/core/util");
  
  var ComponentModel = require("../../model/Component");
  
  var axisModelCreator = require("../axisModelCreator");
  
  var axisModelCommonMixin = require("../axisModelCommonMixin");
  
  /*
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
  * distributed with this work for additional information
  * regarding copyright ownership.  The ASF licenses this file
  * to you under the Apache License, Version 2.0 (the
  * "License"); you may not use this file except in compliance
  * with the License.  You may obtain a copy of the License at
  *
  *   http://www.apache.org/licenses/LICENSE-2.0
  *
  * Unless required by applicable law or agreed to in writing,
  * software distributed under the License is distributed on an
  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  * KIND, either express or implied.  See the License for the
  * specific language governing permissions and limitations
  * under the License.
  */
  var AxisModel = ComponentModel.extend({
    type: 'cartesian2dAxis',
  
    /**
     * @type {module:echarts/coord/cartesian/Axis2D}
     */
    axis: null,
  
    /**
     * @override
     */
    init: function () {
      AxisModel.superApply(this, 'init', arguments);
      this.resetRange();
    },
  
    /**
     * @override
     */
    mergeOption: function () {
      AxisModel.superApply(this, 'mergeOption', arguments);
      this.resetRange();
    },
  
    /**
     * @override
     */
    restoreData: function () {
      AxisModel.superApply(this, 'restoreData', arguments);
      this.resetRange();
    },
  
    /**
     * @override
     * @return {module:echarts/model/Component}
     */
    getCoordSysModel: function () {
      return this.ecModel.queryComponents({
        mainType: 'grid',
        index: this.option.gridIndex,
        id: this.option.gridId
      })[0];
    }
  });
  
  function getAxisType(axisDim, option) {
    // Default axis with data is category axis
    return option.type || (option.data ? 'category' : 'value');
  }
  
  zrUtil.merge(AxisModel.prototype, axisModelCommonMixin);
  var extraOption = {
    // gridIndex: 0,
    // gridId: '',
    // Offset is for multiple axis on the same position
    offset: 0
  };
  axisModelCreator('x', AxisModel, getAxisType, extraOption);
  axisModelCreator('y', AxisModel, getAxisType, extraOption);
  var _default = AxisModel;
  module.exports = _default;