62 lines
1.6 KiB
JavaScript
62 lines
1.6 KiB
JavaScript
import * as echarts from 'echarts/lib/echarts';
|
|
import formatUtil from '../../util/format';
|
|
import formatTooltip from '../common/formatTooltip';
|
|
import createList from '../common/createList';
|
|
export default echarts.SeriesModel.extend({
|
|
type: 'series.scatter3D',
|
|
dependencies: ['globe', 'grid3D', 'geo3D'],
|
|
visualStyleAccessPath: 'itemStyle',
|
|
hasSymbolVisual: true,
|
|
getInitialData: function (option, ecModel) {
|
|
return createList(this);
|
|
},
|
|
getFormattedLabel: function (dataIndex, status, dataType, dimIndex) {
|
|
var text = formatUtil.getFormattedLabel(this, dataIndex, status, dataType, dimIndex);
|
|
|
|
if (text == null) {
|
|
var data = this.getData();
|
|
var lastDim = data.dimensions[data.dimensions.length - 1];
|
|
text = data.get(lastDim, dataIndex);
|
|
}
|
|
|
|
return text;
|
|
},
|
|
formatTooltip: function (dataIndex) {
|
|
return formatTooltip(this, dataIndex);
|
|
},
|
|
defaultOption: {
|
|
coordinateSystem: 'cartesian3D',
|
|
zlevel: -10,
|
|
progressive: 1e5,
|
|
progressiveThreshold: 1e5,
|
|
// Cartesian coordinate system
|
|
grid3DIndex: 0,
|
|
globeIndex: 0,
|
|
symbol: 'circle',
|
|
symbolSize: 10,
|
|
// Support source-over, lighter
|
|
blendMode: 'source-over',
|
|
label: {
|
|
show: false,
|
|
position: 'right',
|
|
// Screen space distance
|
|
distance: 5,
|
|
textStyle: {
|
|
fontSize: 14,
|
|
color: '#000',
|
|
backgroundColor: 'rgba(255,255,255,0.7)',
|
|
padding: 3,
|
|
borderRadius: 3
|
|
}
|
|
},
|
|
itemStyle: {
|
|
opacity: 0.8
|
|
},
|
|
emphasis: {
|
|
label: {
|
|
show: true
|
|
}
|
|
},
|
|
animationDurationUpdate: 500
|
|
}
|
|
}); |