CSDN开源夏令营 百度数据可视化实践 ECharts(8)
(1)前言
首先谢谢林峰老师,继续接着第七篇提到的内容。CSS布局确实非常累,感觉不好看了就的调整,总的看起来的高大上嘛。好了废话不再多说。今天主要就先解说一个页面的内容,对于CSS布局后面讲会具体的介绍给大家。
另外我写的搭配时间轴地图扩展被ECharts採用
,http://echarts.baidu.com/doc/example/map19.html
(2)整体内容
专题包括有例如以下五块:
1)大海战全程: 实时描写叙述大海战
2)国力对照篇: 中日战前、战后国力对照
3)装备对照篇: 海军实力全方位对照
4)历史人物篇: 中日决策关键人物
5)殉国将领篇: 纪念北洋海军殉国将领
布局例如以下:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMzQ3NjQ2NA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
(2)具体讲述装备对照篇中的-军力对照
首先上图:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMzQ3NjQ2NA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
(3)代码具体解释
为了让代码书写的更加有规范性,js和html以及CSS全面分离。
js部分结构例如以下:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMzQ3NjQ2NA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
warship04Test.js代码例如以下:
require.config({
paths:{
echarts:'./js/echarts',
'echarts/chart/bar' : './js/echarts-map',
'echarts/chart/line': './js/echarts-map',
'echarts/chart/radar':'./js/echarts-map'
}
});
require(
[
'echarts',
'echarts/chart/bar',
'echarts/chart/line',
'echarts/chart/radar'
],
function (ec) {
//data : ['总排水量','总兵力','鱼雷发射管','编队马力','火炮数量','平均航速']
var myChart1bottom = ec.init(document.getElementById('warship01_bottom'));
myChart1bottom.setOption({
tooltip : {
trigger: 'axis',
formatter:function(a,b,c){
var res_jiawu= a[0][0]+'<br/>'+a[0][3];
for(var i=0;i<a.length;i++)
{
switch(a[0][3])
{
case '总排水量':
res_jiawu+='<br/>'+a[i][1]+':'+a[i][2]+'吨';
break;
case '编队马力':
res_jiawu+='<br/>'+a[i][1]+':'+a[i][2]+'匹';
break;
case '大口径火炮数':
res_jiawu+='<br/>'+a[i][1]+':'+a[i][2]+'门';
break;
case '火炮:一分钟投弹数量':
res_jiawu+='<br/>'+a[i][1]+':'+a[i][2]+'发';
break;
case '火炮:一分钟投射重量':
res_jiawu+='<br/>'+a[i][1]+':'+a[i][2]+'千克';
break;
case '速射炮数量':
res_jiawu+='<br/>'+a[i][1]+':'+a[i][2]+'门';
break;
}
}
return res_jiawu;
}
},
legend: {
orient : 'vertical',
x : 'right',
y : 'bottom',
data:['北洋舰队','日本联合舰队']
},
toolbox: {
show : true,
feature : {
mark : {show: true},
dataView : {show: true, readOnly: false},
restore : {show: true},
saveAsImage : {show: true}
}
},
polar : [
{
indicator : [
{ text: '总排水量', max: 50000},
{ text: '编队马力', max: 70000},
{ text: '大口径火炮数', max: 200},
{ text: '火炮:一分钟投弹数量', max: 300},
{ text: '火炮:一分钟投射重量', max: 6000},
{ text: '速射炮数量', max: 100}
]
}
],
calculable : true,
series : [
{
name: '北洋舰队 vs 日本联合舰队',
type: 'radar',
data : [
{
value : [32100, 42200, 58, 22, 1864, 0],
name : '北洋舰队'
},
{
value : [40840, 68900, 104, 232,5965, 89],
name : '日本联合舰队',
itemStyle:{
normal:{
label:{
show:true,
textStyle:{color:'green'},
formatter:function(a,b,c){
switch(b)
{
case '总排水量':
var res= c +'吨';
break;
case '编队马力':
var res= c +'匹';
break;
case '大口径火炮数':
var res= c +'门';
break;
case '火炮:一分钟投弹数量':
var res= c + '发';
break;
case '火炮:一分钟投射重量':
var res= c +'千克';
break;
case '速射炮数量':
var res= c +'门';
break;
}
return res;
}
}
}
}
}
]
}
]
});
}
);
军费对照页面例如以下:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMzQ3NjQ2NA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
代码例如以下:
require.config({
paths:{
echarts:'./js/echarts',
'echarts/chart/bar' : './js/echarts-map',
'echarts/chart/line': './js/echarts-map',
'echarts/chart/map' : './js/echarts-map'
}
});
require(
[
'echarts',
'echarts/chart/bar',
'echarts/chart/line',
'echarts/chart/map',
'echarts/chart/pie'
],
function (ec) {
var myChart4 = ec.init(document.getElementById('warship04'));
myChart4.setOption({
tooltip : {
trigger: 'axis'
},
toolbox: {
show : true,
feature : {
mark : {show: true},
dataView : {show: true, readOnly: false},
magicType: {show: true, type: ['line', 'bar']},
restore : {show: true},
saveAsImage : {show: true}
}
},
calculable : true,
legend: {
data:['北洋舰队军费','日本海军军费','日中军费比值']
},
xAxis : [
{
type : 'category',
data : ['1876年','1877年','1878年','1880年','1881年','1882年','1884年','1885年','1886年','1888年','1889年','1893年']
}
],
yAxis : [
{
type : 'value',
name : '白银',
axisLabel : {
formatter: '{value} 万两'
}
},
{
type : 'value',
name : '日本军费/北洋军费'
}
],
series : [
{
name:'北洋舰队军费',
type:'bar',
data:[200.0, 200.0, 57.0, 57.2, 410.6, 160.7, 210.6, 600.2, 198.6, 200.0, 200.4, 210.3],
markLine:{
data:[
{type : 'average', name: '平均值'}
]
}
},
{
name:'日本海军军费',
type:'bar',
data:[400.0, 401.0, 200.0, 230.4, 600.7, 360.7, 670.6, 830.2, 760.7, 818.8, 1100.0, 760.3],
// data:[200.0, 200.0, 57.0, 57.2, 410.6, 160.7, 210.6, 600.2, 198.6, 200.0, 200.4, 210.3]
markLine:{
data:[
{type : 'average', name: '平均值'}
]
}
},
{
name:'日中军费比值',
type:'line',
yAxisIndex: 1,
data:[2.0, 2.005, 3.5, 4.03, 1.462, 2.245, 3.184, 1.383, 3.830,4.094, 5.49, 3.62]
}
]
});
}
);
其他很多其他内容下次继续分享。谢谢大家。本周就先写到这里。
CSDN开源夏令营 百度数据可视化实践 ECharts(8)的更多相关文章
- CSDN开源夏令营 百度数据可视化实践 ECharts(8)问题分析
ECharts问题描写叙述: 问题就是折线图上的点是显示的,有人问能不能一開始不显示,当你点击的时候或者是当鼠标移动到上面的时候,折线上的点才显示? 例如以下图所看到的: 分析:让折线上的点不显示能够 ...
- CSDN开源夏令营 百度数据可视化实践 ECharts(4)
ECharts知识点总结: 在应用过程中总会遇到一些难以理解的概念和属性,这里就总结了一下比較难的知识点,方便理解概念.进而更好的掌握ECharts. (1)1. 一个完整的option包括什么?能 ...
- 自动驾驶汽车数据不再封闭,Uber 开源新的数据可视化系统
日前,Uber 开源了基于 web 的自动驾驶可视化系统(AVS),称该系统为自动驾驶行业带来理解和共享数据的新方式.AVS 由Uber旗下负责自动驾驶汽车研发的技术事业群(ATG)开发,目前该系统已 ...
- 值得赞扬的尝试与进步——CSDN开源夏令营第一印象
注:写这篇文章时我并未參加CSDN开源夏令营,也不确定是否会參加以及是否能參加上. 欣闻CSDN举办了"CSDN开源夏令营"活动.第一感觉是CSDN作为活动的组织者是很值得称赞的. ...
- 百度数据可视化图表套件echart实战
最近我一直在做数据可视化的前端工作,我用的最多的绘图工具是d3.d3有点像photoshop,功能很强大,例子也很多,但是学习成本也不低,做项目是需要较大人力投入的.3月底由在亚马逊工作的同学介绍下使 ...
- JavaScript—数据可视化(ECharts)
Echarts具有丰富的图表,可以说是数据可视化的神器: 1.下载Echarts 官网下载地址:https://echarts.baidu.com/index.html 2.Echarts引用案例—柱 ...
- 数据可视化图表ECharts
介绍: ECharts是一个基于ZRender(轻量级Canvas类库)的纯javascript图表库,提供可交互.个性化的数据可视化图表. ECharts提供了折线图.柱状图.散点图.饼图.K线图, ...
- 4款开源免费的数据可视化JavaScript库
概述:交互式数据可视化在很大程度上取决于JavaScript库的任务能力.在这篇文章中,我们将看看四个JavaScript库:D3,InfoVis,Processing.js,和Recline.js. ...
- 【WaaCaa】一款开源科学作图/数据可视化工具 —— 诞生篇
作为一个理工男.用过了形形色色能够用于科学作图/数据可视化软件:从大学时做实验课推荐用于分析简单採集数据的 Origin; 毕业论文时用来呈现实验时序信号和离线分析脑电信号的 MATLAB.后面还发现 ...
随机推荐
- cookie实现记住密码功能
之前在一次面试过程中,被问到前后端如何实现记住密码功能,所以自己也试着做,这是纯js做的. 一.实现思路 1.前端页面,自己简单写了一个页面,如下图,不喜勿喷 2.主要有三个函数 setCookie( ...
- (转) Unity3D常用代码收集总结
//创建一个名为"Player"的游戏物体 //并给他添加刚体和立方体碰撞器. player=new GameObject("Player"); player. ...
- concat函数,concat_ws函数,group_concat函数,repeat()函数
MySQL中concat函数使用方法:CONCAT(str1,str2,-) 返回结果为连接参数产生的字符串.如有任何一个参数为NULL ,则返回值为 NULL. 注意:如果所有参数均为非二进制字符串 ...
- Eclipse调试远程服务器
原文:https://blog.csdn.net/fengshizty/article/details/45126737 Eclipse提供能调试远程服务器的功能,最近做微信开发,需要部署到远程服务器 ...
- 【mysql】更新“”空字符串为NULL
mysql中NULL和“”是完全不同的概念,因此出现了“”导致NULL不可查的问题出现,那怎么能将一个字段设置为NULL呢? update goods_type gt set gt.parent_ui ...
- 【java】实体类中 按照特定的字段 进行升序/降序 排序
背景: 实际页面上 所有的分值都是按照JSON格式存储在一个字符串中 存储在同一个字段中: {"ownPTotal":"10>0","ownO ...
- Eclipse 生成WebService客户端代码
1. 打开Eclipse,新建一个普通的Javaproject,然后在新建的项目上右键点击项目,New---->other---->Web Services -------->Web ...
- jquery的表单验证方法,一个function能不能同时捕捉点击事件和按键事件?能不能再优化下,有代码。
// 该jquery扩展引自 http://www.ghostsf.com/tools/389.html 方法名是作者博客的命名 $.fn.ghostsf_serialize = function ( ...
- hive的rownumber()的使用
举个简单的栗子: 找到最小日期的那一条记录 select * from ( select *,row_number() over (partition by id order by cast(date ...
- git remote branch操作
将本地branch basic提交到remote的basic上: git push origin basic:basic 将remote的 basic branch更新到本地的 basic branc ...