(series, type, minRadius, radius)
| 1035 | } |
| 1036 | |
| 1037 | function getRoseDataPoints(series, type, minRadius, radius) { |
| 1038 | var process = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 1; |
| 1039 | var count = 0; |
| 1040 | var _start_ = 0; |
| 1041 | |
| 1042 | var dataArr = []; |
| 1043 | for (let i = 0; i < series.length; i++) { |
| 1044 | let item = series[i]; |
| 1045 | item.data = item.data === null ? 0 : item.data; |
| 1046 | count += item.data; |
| 1047 | dataArr.push(item.data); |
| 1048 | } |
| 1049 | |
| 1050 | var minData = Math.min.apply(null, dataArr); |
| 1051 | var maxData = Math.max.apply(null, dataArr); |
| 1052 | var radiusLength = radius - minRadius; |
| 1053 | |
| 1054 | for (let i = 0; i < series.length; i++) { |
| 1055 | let item = series[i]; |
| 1056 | item.data = item.data === null ? 0 : item.data; |
| 1057 | if (count === 0 || type == 'area') { |
| 1058 | item._proportion_ = item.data / count * process; |
| 1059 | item._rose_proportion_ = 1 / series.length * process; |
| 1060 | } else { |
| 1061 | item._proportion_ = item.data / count * process; |
| 1062 | item._rose_proportion_ = item.data / count * process; |
| 1063 | } |
| 1064 | item._radius_ = minRadius + radiusLength * ((item.data - minData) / (maxData - minData)); |
| 1065 | } |
| 1066 | for (let i = 0; i < series.length; i++) { |
| 1067 | let item = series[i]; |
| 1068 | item._start_ = _start_; |
| 1069 | _start_ += 2 * item._rose_proportion_ * Math.PI; |
| 1070 | } |
| 1071 | |
| 1072 | return series; |
| 1073 | } |
| 1074 | |
| 1075 | function getArcbarDataPoints(series, arcbarOption) { |
| 1076 | var process = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1; |
no outgoing calls
no test coverage detected