Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
x649585723
incubator-echarts
提交
266004cb
I
incubator-echarts
项目概览
x649585723
/
incubator-echarts
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
I
incubator-echarts
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
266004cb
编写于
10月 28, 2015
作者:
L
lang
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Markpoint precision
上级
b2d09149
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
52 addition
and
18 deletion
+52
-18
src/component/marker/markerHelper.js
src/component/marker/markerHelper.js
+22
-0
src/echarts.js
src/echarts.js
+1
-1
src/util/number.js
src/util/number.js
+29
-17
未找到文件。
src/component/marker/markerHelper.js
浏览文件 @
266004cb
define
(
function
(
require
)
{
var
zrUtil
=
require
(
'
zrender/core/util
'
);
var
numberUtil
=
require
(
'
../../util/number
'
);
var
getPrecision
=
function
(
data
,
valueAxisDim
,
dataIndex
)
{
var
precision
=
-
1
;
do
{
precision
=
Math
.
max
(
numberUtil
.
getPrecision
(
data
.
get
(
valueAxisDim
,
dataIndex
)),
precision
);
data
=
data
.
stackedOn
;
}
while
(
data
);
return
precision
;
};
var
markerTypeCalculatorWithExtent
=
function
(
percent
,
data
,
baseAxisDim
,
valueAxisDim
)
{
var
extent
=
data
.
getDataExtent
(
valueAxisDim
);
...
...
@@ -12,6 +28,12 @@ define(function (require) {
var
dataIndex
=
data
.
indexOfNearest
(
valueAxisDim
,
val
);
valueArr
[
1
-
valueIndex
]
=
data
.
get
(
baseAxisDim
,
dataIndex
);
valueArr
[
valueIndex
]
=
data
.
get
(
valueAxisDim
,
dataIndex
,
true
);
var
precision
=
getPrecision
(
data
,
valueAxisDim
,
dataIndex
);
if
(
precision
>=
0
)
{
valueArr
[
valueIndex
]
=
+
valueArr
[
valueIndex
].
toFixed
(
precision
);
}
return
valueArr
;
};
...
...
src/echarts.js
浏览文件 @
266004cb
...
...
@@ -367,7 +367,7 @@ define(function (require) {
for
(
var
i
=
0
;
i
<
componentsList
.
length
;)
{
var
component
=
componentsList
[
i
];
if
(
!
component
.
__keepAlive
)
{
if
(
!
component
.
__keepAlive
)
{
this
.
_zr
.
remove
(
component
.
group
);
component
.
dispose
(
this
.
_extensionAPI
);
componentsList
.
splice
(
i
,
1
);
...
...
src/util/number.js
浏览文件 @
266004cb
...
...
@@ -6,6 +6,7 @@
define
(
function
(
require
)
{
var
zrUtil
=
require
(
'
zrender/core/util
'
);
var
number
=
{};
function
_trim
(
str
)
{
return
str
.
replace
(
/^
\s
+/
,
''
).
replace
(
/
\s
+$/
,
''
);
...
...
@@ -20,7 +21,7 @@ define(function (require) {
* @param {boolean} clamp
* @return {(number|Array.<number>}
*/
function
linearMap
(
val
,
domain
,
range
,
clamp
)
{
number
.
linearMap
=
function
(
val
,
domain
,
range
,
clamp
)
{
if
(
zrUtil
.
isArray
(
val
))
{
return
zrUtil
.
map
(
val
,
function
(
v
)
{
...
...
@@ -50,7 +51,7 @@ define(function (require) {
* @param {number} all
* @return {number}
*/
function
parsePercent
(
percent
,
all
)
{
number
.
parsePercent
=
function
(
percent
,
all
)
{
switch
(
percent
)
{
case
'
center
'
:
case
'
middle
'
:
...
...
@@ -74,34 +75,45 @@ define(function (require) {
}
return
+
percent
;
}
}
;
/**
* Fix rounding error of float numbers
* @param {number} x
* @return {number}
*/
function
round
(
x
)
{
number
.
round
=
function
(
x
)
{
// PENDING
return
+
(
+
x
).
toFixed
(
12
);
}
function
asc
(
arr
)
{
number
.
asc
=
function
(
arr
)
{
arr
.
sort
(
function
(
a
,
b
)
{
return
a
-
b
;
});
return
arr
;
}
return
{
linearMap
:
linearMap
,
parsePercent
:
parsePercent
,
};
round
:
round
,
/**
* Get precision
* @param {number} val
*/
number
.
getPrecision
=
function
(
val
)
{
// It is much faster than methods converting number to string as follows
// var tmp = val.toString();
// return tmp.length - 1 - tmp.indexOf('.');
// especially when precision is low
var
e
=
1
;
var
count
=
0
;
while
(
Math
.
round
(
val
*
e
)
/
e
!==
val
)
{
e
*=
10
;
count
++
;
}
return
count
;
};
asc
:
asc
,
// Number.MAX_SAFE_INTEGER, ie do not support.
number
.
MAX_SAFE_INTEGER
=
9007199254740991
;
// Number.MAX_SAFE_INTEGER, ie do not support.
MAX_SAFE_INTEGER
:
9007199254740991
};
return
number
;
});
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录