AxisModel.js 1.6 KB
Newer Older
L
lang 已提交
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
define(function(require) {

    'use strict';

    var axisDefault = require('../axisDefault');

    var zrUtil = require('zrender/core/util');

    function mergeDefault(axisOption, ecModel) {
        var axisType = axisOption.type + 'Axis';

        zrUtil.merge(axisOption, ecModel.get(axisType));
        zrUtil.merge(axisOption, ecModel.getTheme().get(axisType));
        zrUtil.merge(axisOption, axisDefault[axisType]);
    }

    var PolarAxisModel = require('../../model/Component').extend({
        type: 'polarAxis',
        /**
         * @type {module:echarts/coord/polar/AngleAxis|module:echarts/coord/polar/RadiusAxis}
         */
        axis: null
    });

    zrUtil.merge(PolarAxisModel.prototype, require('../axisModelCommonMixin'));



    // Radius axis
    PolarAxisModel.extend({

        type: 'radiusAxis',

        /**
         * @type {module:echarts/coord/polar/RadiusAxis}
         */
        axis: null,

        init: function (axisOption, parentModel, ecModel) {
            axisOption.type = axisOption.type || 'value';

            axisOption.polarIndex = axisOption.polarIndex || 0;

            mergeDefault(axisOption, ecModel);
        }
    });

    // Angle axis
    PolarAxisModel.extend({

        type: 'angleAxis',

        /**
         * @type {module:echarts/coord/polar/AngleAxis}
         */
        axis: null,

        init: function (axisOption, parentModel, ecModel) {
            axisOption.type = axisOption.type || 'category';

            axisOption.polarIndex = axisOption.polarIndex || 0;

            mergeDefault(axisOption, ecModel);
        }
    });
});