BarSeries.js 2.3 KB
Newer Older
L
lang 已提交
1 2 3 4
define(function(require) {

    'use strict';

5
    var SeriesModel = require('../../model/Series');
L
lang 已提交
6
    var createListFromArray = require('../helper/createListFromArray');
L
lang 已提交
7

8
    return SeriesModel.extend({
L
lang 已提交
9

10 11
        type: 'series.bar',

L
lang 已提交
12
        dependencies: ['grid', 'polar'],
L
lang 已提交
13

14
        getInitialData: function (option, ecModel) {
L
lang 已提交
15 16 17 18 19 20
            if (__DEV__) {
                var coordSys = option.coordinateSystem;
                if (coordSys !== 'cartesian2d') {
                    throw new Error('Bar only support cartesian2d coordinateSystem');
                }
            }
L
lang 已提交
21
            return createListFromArray(option.data, this, ecModel);
L
lang 已提交
22 23
        },

24 25 26
        getMarkerPosition: function (value) {
            var coordSys = this.coordinateSystem;
            if (coordSys) {
L
lang 已提交
27 28
                // PENDING if clamp ?
                var pt = coordSys.dataToPoint(value, true);
29 30 31 32 33 34 35 36 37 38
                var data = this.getData();
                var offset = data.getLayout('offset');
                var size = data.getLayout('size');
                var offsetIndex = coordSys.getBaseAxis().isHorizontal() ? 0 : 1;
                pt[offsetIndex] += offset + size / 2;
                return pt;
            }
            return [NaN, NaN];
        },

P
pah100 已提交
39
        brushSelector: 'rect',
P
pah100 已提交
40

L
lang 已提交
41 42 43 44 45 46
        defaultOption: {
            zlevel: 0,                  // 一级层叠
            z: 2,                       // 二级层叠
            coordinateSystem: 'cartesian2d',
            legendHoverLink: true,
            // stack: null
L
lang 已提交
47 48

            // Cartesian coordinate system
L
lang 已提交
49 50
            xAxisIndex: 0,
            yAxisIndex: 0,
L
lang 已提交
51

L
lang 已提交
52 53
            // 最小高度改为0
            barMinHeight: 0,
L
lang 已提交
54 55

            // barMaxWidth: null,
L
lang 已提交
56 57 58
            // 默认自适应
            // barWidth: null,
            // 柱间距离,默认为柱形宽度的30%,可设固定值
59
            // barGap: '30%',
L
lang 已提交
60
            // 类目间柱形距离,默认为类目间距的20%,可设固定值
61
            // barCategoryGap: '20%',
L
lang 已提交
62 63 64 65 66
            // label: {
            //     normal: {
            //         show: false
            //     }
            // },
L
lang 已提交
67 68
            itemStyle: {
                normal: {
L
lang 已提交
69
                    // color: '各异'
L
lang 已提交
70
                },
71
                emphasis: {}
L
lang 已提交
72
            }
L
lang 已提交
73 74 75
        }
    });
});