echarts SeriesDimensionDefine 源码
echarts SeriesDimensionDefine 代码
文件路径:/src/data/SeriesDimensionDefine.ts
/*
* 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.
*/
import * as zrUtil from 'zrender/src/core/util';
import OrdinalMeta from './OrdinalMeta';
import { DataVisualDimensions, DimensionType } from '../util/types';
class SeriesDimensionDefine {
/**
* Dimension type. The enumerable values are the key of
* Optional.
*/
type?: DimensionType;
/**
* Dimension name.
* Mandatory.
*/
name: string;
/**
* The origin name in dimsDef, see source helper.
* If displayName given, the tooltip will displayed vertically.
* Optional.
*/
displayName?: string;
// FIXME: check whether it is still used.
// See Series.ts#formatArrayValue
tooltip?: boolean;
/**
* This dimension maps to the the dimension in dataStore by `storeDimIndex`.
* Notice the facts:
* 1. When there are too many dimensions in data store, seriesData only save the
* used store dimensions.
* 2. We use dimensionIndex but not name to reference store dimension
* becuause the dataset dimension definition might has no name specified by users,
* or names in sereis dimension definition might be different from dataset.
*/
storeDimIndex?: number;
/**
* Which coordSys dimension this dimension mapped to.
* A `coordDim` can be a "coordSysDim" that the coordSys required
* (for example, an item in `coordSysDims` of `model/referHelper#CoordSysInfo`),
* or an generated "extra coord name" if does not mapped to any "coordSysDim"
* (That is determined by whether `isExtraCoord` is `true`).
* Mandatory.
*/
coordDim?: string;
/**
* The index of this dimension in `series.encode[coordDim]`.
* Mandatory.
*/
coordDimIndex?: number;
/**
* The format of `otherDims` is:
* ```js
* {
* tooltip?: number
* label?: number
* itemName?: number
* seriesName?: number
* }
* ```
*
* A `series.encode` can specified these fields:
* ```js
* encode: {
* // "3, 1, 5" is the index of data dimension.
* tooltip: [3, 1, 5],
* label: [0, 3],
* ...
* }
* ```
* `otherDims` is the parse result of the `series.encode` above, like:
* ```js
* // Suppose the index of this data dimension is `3`.
* this.otherDims = {
* // `3` is at the index `0` of the `encode.tooltip`
* tooltip: 0,
* // `3` is at the index `1` of the `encode.label`
* label: 1
* };
* ```
*
* This prop should never be `null`/`undefined` after initialized.
*/
otherDims?: DataVisualDimensions = {};
/**
* Be `true` if this dimension is not mapped to any "coordSysDim" that the
* "coordSys" required.
* Mandatory.
*/
isExtraCoord?: boolean;
/**
* If this dimension if for calculated value like stacking
*/
isCalculationCoord?: boolean;
defaultTooltip?: boolean;
ordinalMeta?: OrdinalMeta;
/**
* Whether to create inverted indices.
*/
createInvertedIndices?: boolean;
/**
* @param opt All of the fields will be shallow copied.
*/
constructor(opt?: object | SeriesDimensionDefine) {
if (opt != null) {
zrUtil.extend(this, opt);
}
}
};
export default SeriesDimensionDefine;
相关信息
相关文章
0
赞
热门推荐
-
2、 - 优质文章
-
3、 gate.io
-
8、 golang
-
9、 openharmony
-
10、 Vue中input框自动聚焦