Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
missman
incubator-echarts
提交
a1c9e0ca
I
incubator-echarts
项目概览
missman
/
incubator-echarts
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
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,发现更多精彩内容 >>
提交
a1c9e0ca
编写于
10月 21, 2015
作者:
L
lang
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Map fix
上级
5e2ec5af
变更
10
隐藏空白更改
内联
并排
Showing
10 changed file
with
76 addition
and
26 deletion
+76
-26
src/action/geoRoam.js
src/action/geoRoam.js
+20
-4
src/chart/map/MapSeries.js
src/chart/map/MapSeries.js
+2
-2
src/chart/map/MapView.js
src/chart/map/MapView.js
+8
-2
src/chart/map/mapDataStatistic.js
src/chart/map/mapDataStatistic.js
+1
-1
src/component/dataRange/dataRangeAction.js
src/component/dataRange/dataRangeAction.js
+2
-1
src/component/helper/MapDraw.js
src/component/helper/MapDraw.js
+1
-2
src/coord/geo/geoCreator.js
src/coord/geo/geoCreator.js
+17
-5
src/preprocessor/backwardCompat.js
src/preprocessor/backwardCompat.js
+3
-3
test/map.html
test/map.html
+19
-3
test/mapWorld.html
test/mapWorld.html
+3
-3
未找到文件。
src/action/geoRoam.js
浏览文件 @
a1c9e0ca
...
...
@@ -19,6 +19,14 @@ define(function (require) {
*/
echarts
.
registerAction
(
actionInfo
,
function
(
payload
,
ecModel
)
{
var
componentType
=
payload
.
component
||
'
series
'
;
function
syncRoamOfAllMapSeries
(
mapType
,
panX
,
panY
,
zoom
)
{
ecModel
.
eachSeriesByTypeAll
(
'
map
'
,
function
(
seriesModel
)
{
seriesModel
.
setRoamPan
(
panX
,
panY
);
seriesModel
.
setRoamZoom
(
zoom
);
});
}
ecModel
.
eachComponent
(
componentType
,
function
(
componentModel
)
{
if
(
componentModel
.
name
===
payload
.
name
)
{
var
dx
=
payload
.
dx
;
...
...
@@ -32,6 +40,7 @@ define(function (require) {
var
roamDetailModel
=
componentModel
.
getModel
(
'
roamDetail
'
);
var
panX
=
roamDetailModel
.
get
(
'
x
'
)
||
0
;
var
panY
=
roamDetailModel
.
get
(
'
y
'
)
||
0
;
var
previousZoom
=
roamDetailModel
.
get
(
'
zoom
'
)
||
1
;
if
(
dx
!=
null
&&
dy
!=
null
)
{
// FIXME Must divide mapScale ?
...
...
@@ -44,9 +53,7 @@ define(function (require) {
geo
&&
geo
.
setPan
(
panX
,
panY
);
}
if
(
zoom
!=
null
&&
componentModel
.
setRoamZoom
)
{
var
previousZoom
=
roamDetailModel
.
get
(
'
zoom
'
)
||
1
;
if
(
zoom
!=
null
)
{
var
fixX
=
(
payload
.
originX
-
panX
)
*
(
zoom
-
1
);
var
fixY
=
(
payload
.
originY
-
panY
)
*
(
zoom
-
1
);
...
...
@@ -54,12 +61,21 @@ define(function (require) {
panY
-=
fixY
;
geo
&&
geo
.
setPan
(
panX
,
panY
);
componentModel
.
setRoamPan
&&
componentModel
.
setRoamPan
(
panX
,
panY
);
geo
&&
geo
.
setZoom
(
zoom
*
previousZoom
);
componentModel
.
setRoamZoom
(
zoom
*
previousZoom
);
componentModel
.
setRoamZoom
&&
componentModel
.
setRoamZoom
(
zoom
*
previousZoom
);
}
// All map series with same `map` use the same geo coordinate system
// So the roamDetail must be in sync. Include the series not selected by legend
if
(
componentType
===
'
series
'
)
{
syncRoamOfAllMapSeries
(
componentModel
.
get
(
'
map
'
),
panX
,
panY
,
(
zoom
||
1
)
*
previousZoom
);
}
}
});
...
...
src/chart/map/MapSeries.js
浏览文件 @
a1c9e0ca
...
...
@@ -62,8 +62,8 @@ define(function (require) {
// 二级层叠
z
:
2
,
coordinateSystem
:
'
geo
'
,
// 各省的
mapType
暂时都用中文
map
Type
:
'
china
'
,
// 各省的
map
暂时都用中文
map
:
'
china
'
,
mapLocation
:
{
// 'center' | 'left' | 'right' | 'x%' | {number}
x
:
'
center
'
,
...
...
src/chart/map/MapView.js
浏览文件 @
a1c9e0ca
...
...
@@ -21,8 +21,14 @@ define(function (require) {
group
.
add
(
mapDraw
.
group
);
mapModel
.
needsDrawMap
&&
mapDraw
.
draw
(
mapModel
,
ecModel
,
api
);
if
(
mapModel
.
needsDrawMap
)
{
mapModel
.
needsDrawMap
mapDraw
.
draw
(
mapModel
,
ecModel
,
api
);
}
else
{
// Remove drawed map
mapDraw
.
group
.
removeAll
();
}
mapModel
.
get
(
'
showLegendSymbol
'
)
&&
ecModel
.
getComponent
(
'
legend
'
)
&&
this
.
_renderSymbols
(
mapModel
,
ecModel
,
api
);
...
...
src/chart/map/mapDataStatistic.js
浏览文件 @
a1c9e0ca
...
...
@@ -41,7 +41,7 @@ define(function (require) {
return
function
(
ecModel
)
{
var
seriesGroupByMapType
=
{};
ecModel
.
eachSeriesByType
(
'
map
'
,
function
(
seriesModel
)
{
var
mapType
=
seriesModel
.
get
(
'
map
Type
'
);
var
mapType
=
seriesModel
.
get
(
'
map
'
);
seriesGroupByMapType
[
mapType
]
=
seriesGroupByMapType
[
mapType
]
||
[];
seriesGroupByMapType
[
mapType
].
push
(
seriesModel
);
});
...
...
src/component/dataRange/dataRangeAction.js
浏览文件 @
a1c9e0ca
...
...
@@ -10,7 +10,8 @@ define(function(require) {
var
actionInfo
=
{
type
:
'
selectDataRange
'
,
event
:
'
dataRangeSelected
'
,
update
:
'
updateView
'
// FIXME use updateView appears wrong
update
:
'
update
'
};
echarts
.
registerAction
(
actionInfo
,
function
(
payload
,
ecModel
)
{
...
...
src/component/helper/MapDraw.js
浏览文件 @
a1c9e0ca
...
...
@@ -132,8 +132,7 @@ define(function (require) {
});
controller
.
rect
=
geo
.
getViewBox
();
},
}
}
return
MapDraw
;
...
...
src/coord/geo/geoCreator.js
浏览文件 @
a1c9e0ca
...
...
@@ -5,6 +5,7 @@ define(function (require) {
var
Geo
=
require
(
'
./Geo
'
);
var
numberUtil
=
require
(
'
../../util/number
'
);
var
zrUtil
=
require
(
'
zrender/core/util
'
);
var
mapDataStores
=
{};
...
...
@@ -113,22 +114,33 @@ define(function (require) {
});
// If has map series
// PENDING Create new geo component dynamically
var
mapModelGroupBySeries
=
{};
ecModel
.
eachSeriesByType
(
'
map
'
,
function
(
seriesModel
)
{
var
mapType
=
seriesModel
.
get
(
'
mapType
'
);
var
mapType
=
seriesModel
.
get
(
'
map
'
);
mapModelGroupBySeries
[
mapType
]
=
mapModelGroupBySeries
[
mapType
]
||
[];
mapModelGroupBySeries
[
mapType
].
push
(
seriesModel
);
});
zrUtil
.
each
(
mapModelGroupBySeries
,
function
(
mapSeries
,
mapType
)
{
var
geoJson
=
mapDataStores
[
mapType
];
if
(
!
geoJson
)
{
// Warning
}
var
geo
=
new
Geo
(
seriesModel
.
name
,
geoJson
);
var
geo
=
new
Geo
(
mapType
,
geoJson
);
geoList
.
push
(
geo
);
// Inject resize method
geo
.
resize
=
resizeGeo
;
geo
.
resize
(
seriesModel
,
api
);
geo
.
resize
(
mapSeries
[
0
]
,
api
);
seriesModel
.
coordinateSystem
=
geo
;
zrUtil
.
each
(
mapSeries
,
function
(
singleMapSeries
)
{
singleMapSeries
.
coordinateSystem
=
geo
;
});
});
return
geoList
;
...
...
src/preprocessor/backwardCompat.js
浏览文件 @
a1c9e0ca
...
...
@@ -40,9 +40,6 @@ define(function (require) {
}
}
function
compatMapSeries
(
opt
)
{
}
return
function
(
option
)
{
zrUtil
.
each
(
option
.
series
,
function
(
seriesOpt
)
{
compatItemStyle
(
seriesOpt
);
...
...
@@ -52,6 +49,9 @@ define(function (require) {
compatItemStyle
(
data
[
i
]);
}
}
if
(
seriesOpt
.
type
===
'
map
'
)
{
seriesOpt
.
map
=
seriesOpt
.
mapType
||
seriesOpt
.
map
;
}
});
}
});
\ No newline at end of file
test/map.html
浏览文件 @
a1c9e0ca
...
...
@@ -9,6 +9,7 @@
html
,
body
,
#main
{
width
:
100%
;
height
:
100%
;
margin
:
0
;
}
</style>
<div
id=
"main"
></div>
...
...
@@ -35,13 +36,13 @@
var
itemStyle
=
{
normal
:{
label
:{
show
:
true
}
borderColor
:
'
rgba(0, 0, 0, 0.2)
'
},
emphasis
:{
label
:{
show
:
true
},
shadowOffsetX
:
0
,
shadowOffsetY
:
0
,
shadowBlur
:
20
,
borderWidth
:
0
,
shadowColor
:
'
rgba(0, 0, 0, 0.5)
'
}
}
...
...
@@ -69,9 +70,14 @@
{
name
:
'
iphone3
'
,
type
:
'
map
'
,
map
Type
:
'
china
'
,
map
:
'
china
'
,
roam
:
false
,
itemStyle
:
itemStyle
,
label
:
{
normal
:
{
show
:
true
}
},
data
:[
{
name
:
'
北京
'
,
value
:
Math
.
round
(
Math
.
random
()
*
1000
)},
{
name
:
'
天津
'
,
value
:
Math
.
round
(
Math
.
random
()
*
1000
)},
...
...
@@ -114,6 +120,11 @@
type
:
'
map
'
,
mapType
:
'
china
'
,
itemStyle
:
itemStyle
,
label
:
{
normal
:
{
show
:
true
}
},
data
:[
{
name
:
'
北京
'
,
value
:
Math
.
round
(
Math
.
random
()
*
1000
)},
{
name
:
'
天津
'
,
value
:
Math
.
round
(
Math
.
random
()
*
1000
)},
...
...
@@ -141,6 +152,11 @@
type
:
'
map
'
,
mapType
:
'
china
'
,
itemStyle
:
itemStyle
,
label
:
{
normal
:
{
show
:
true
}
},
data
:[
{
name
:
'
北京
'
,
value
:
Math
.
round
(
Math
.
random
()
*
1000
)},
{
name
:
'
天津
'
,
value
:
Math
.
round
(
Math
.
random
()
*
1000
)},
...
...
test/mapWorld.html
浏览文件 @
a1c9e0ca
...
...
@@ -9,6 +9,7 @@
html
,
body
,
#main
{
width
:
100%
;
height
:
100%
;
margin
:
0
;
}
</style>
<div
id=
"main"
></div>
...
...
@@ -34,8 +35,7 @@
var
itemStyle
=
{
normal
:{
borderWidth
:
0.5
,
borderColor
:
'
black
'
,
label
:{
show
:
true
}
borderColor
:
'
black
'
},
emphasis
:{
label
:{
show
:
true
},
...
...
@@ -75,7 +75,7 @@
{
name
:
'
World Population (2010)
'
,
type
:
'
map
'
,
map
Type
:
'
world
'
,
map
:
'
world
'
,
mapLocation
:
{
y
:
60
,
width
:
'
80%
'
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录