src/chart/candlestick/candlestickLayout.js
(开头部分) 4KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
define(function (require) {
var CANDLE_MIN_WIDTH = 2;
var CANDLE_MIN_NICE_WIDTH = 5;
var GPA_MIN = 4;
return function (ecModel) {
ecModel.eachSeriesByType('candlestick', function (seriesModel) {
var coordSys = seriesModel.coordinateSystem;
var data = seriesModel.getData();
var dimensions = seriesModel.dimensions;
var chartLayout = seriesModel.get('layout');
var candleWidth = calculateCandleWidth(seriesModel, data);
data.each(dimensions, function () {
var args = arguments;
var dimLen = dimensions.length;
var axisDimVal = args[0];
var idx = args[dimLen];
var variableDim = chartLayout === 'horizontal' ? 0 : 1;
var constDim = 1 - variableDim;
var openVal = args[1];
var closeVal = args[2];
var lowestVal = args[3];
var highestVal = args[4];
var ocLow = Math.min(openVal, closeVal);
var ocHigh = Math.max(openVal, closeVal);
var ocLowPoint = getPoint(ocLow);
var ocHighPoint = getPoint(ocHigh);
var lowestPoint = getPoint(lowestVal);
var highestPoint = getPoint(highestVal);
var whiskerEnds = [
[highestPoint, ocHighPoint],
[lowestPoint, ocLowPoint]
];
var bodyEnds = [];
addBodyEnd(ocHighPoint, 0);
addBodyEnd(ocLowPoint, 1);
data.setItemLayout(idx, {
chartLayout: chartLayout,
sign: openVal > closeVal ? -1 : openVal < closeVal ? 1 : 0,
initBaseline: openVal > closeVal
? ocHighPoint[constDim] : ocLowPoint[constDim], // open point.
bodyEnds: bodyEnds,
whiskerEnds: whiskerEnds,
brushRect: makeBrushRect()
});
function getPoint(val) {
var p = [];
p[variableDim] = axisDimVal;
后面还有 59 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
