@easyv/charts 1.5.27 → 1.5.28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -23,6 +23,17 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
23
23
 
24
24
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
25
25
 
26
+ //扩张系数,用于扩大数据的最大最小值范围,达到图表尽量居中显示的效果
27
+ var extentRatio = 0;
28
+
29
+ var extentRange = function extentRange(value, type) {
30
+ if (value >= 0) {
31
+ return type == "min" ? value * (1 - extentRatio) : value * (1 + extentRatio);
32
+ } else {
33
+ return type == "min" ? value * (1 + extentRatio) : value * (1 - extentRatio);
34
+ }
35
+ };
36
+
26
37
  var stackData = function stackData(data, series) {
27
38
  var dataMap = (0, _d3v.group)(data, function (d) {
28
39
  return d.x;
@@ -43,7 +54,7 @@ var stackData = function stackData(data, series) {
43
54
  if (d && d.y !== undefined && !isNaN(d.y)) {
44
55
  var currentStack = (0, _utils.getCurrentStack)(stack, stacks);
45
56
 
46
- if (stack && currentStack) {
57
+ if (stack && currentStack && currentStack.stack) {
47
58
  if (d.y >= 0) {
48
59
  currentStack.positive += d.y;
49
60
  arr.push(currentStack.positive);
@@ -61,7 +72,7 @@ var stackData = function stackData(data, series) {
61
72
  max = Math.max.apply(Math, arr.concat([max]));
62
73
  });
63
74
  dataMap.clear();
64
- return [min || 0, max == undefined ? (min || 0) + 100 : max];
75
+ return [extentRange(min || 0, "min"), extentRange(max == undefined ? (min || 0) + 100 : max, "max")];
65
76
  };
66
77
  /**
67
78
  * 计算轴的domain
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@easyv/charts",
3
- "version": "1.5.27",
3
+ "version": "1.5.28",
4
4
  "description": "",
5
5
  "main": "lib/index.js",
6
6
  "scripts": {
@@ -8,13 +8,21 @@ import {
8
8
  getCurrentStack,
9
9
  } from "../utils";
10
10
 
11
+ //扩张系数,用于扩大数据的最大最小值范围,达到图表尽量居中显示的效果
12
+ const extentRatio = 0;
13
+ const extentRange = (value, type)=>{
14
+ if(value>=0){
15
+ return type=="min"?value*(1-extentRatio):value*(1+extentRatio);
16
+ }else{
17
+ return type=="min"?value*(1+extentRatio):value*(1-extentRatio);
18
+ }
19
+ }
11
20
  const stackData = (data, series) => {
12
21
  const dataMap = group(data, (d) => d.x);
13
22
  const stacks = getStacks(series);
14
23
 
15
24
  let min, max;
16
25
  max = min = d3Min(data, (d) => d.y);
17
-
18
26
  dataMap.forEach((value) => {
19
27
  const arr = [];
20
28
  resetStacks(stacks);
@@ -23,7 +31,7 @@ const stackData = (data, series) => {
23
31
  const stack = series.get(d.s);
24
32
  if (d && d.y !== undefined && !isNaN(d.y)) {
25
33
  const currentStack = getCurrentStack(stack, stacks);
26
- if (stack && currentStack) {
34
+ if (stack && currentStack && currentStack.stack) {
27
35
  if (d.y >= 0) {
28
36
  currentStack.positive += d.y;
29
37
  arr.push(currentStack.positive);
@@ -40,7 +48,7 @@ const stackData = (data, series) => {
40
48
  max = Math.max(...arr, max);
41
49
  });
42
50
  dataMap.clear();
43
- return [min || 0, max==undefined?(min || 0) + 100:max];
51
+ return [extentRange(min || 0, "min"), extentRange(max==undefined?(min || 0) + 100:max, "max")];
44
52
  };
45
53
 
46
54
  /**