±à¼ÍƼö: |
±¾ÎÄÀ´×Ôcnblogs£¬±¾ÎÄÖ÷Òª½éÉÜÁËÊý¾Ý¿ÉÊÓ»¯µÄ¿ò¼Üecharts.jsÓ¦ÓÃÒÔ¼°Ò»Ð©¿ª·¢ÈëÃŵÄСʵÀýµÈ¡£ |
|
Ò»¡¢¿ªÆª
Ê×ÏÈÕâÀïÒª¸ÐлһÏÂÎҵĹ«Ë¾£¬ÒòΪ¹«Ë¾ÐèÇóÉÏÃæµÄÐÂÓ±(ÆæÝâ)µÄÐèÇó£¬ÈÃÎÒÓÐÐÒ¿ÉÒÔѧϰµ½Ò»Ð©ºÃÍæÓÐȤµÄǰ¶Ë¼¼Êõ£¬Ç°¶Ë¼¼ÊõÖкÃÍæ¶øÇұȽÏʵÓõÄÎÒÏëÓ¦¸ÃÒªÊýǰ¶ËµÄÊý¾Ý¿ÉÊÓ»¯ÕâÒ»·½Ã棬ĿǰÊÐÃæÉϵÄÊý¾Ý¿ÉÊÓ»¯µÄ¿ò¼ÜÁÕÀÅÂúÄ¿£¬ÀýÈ磺D3.js¡¢hightcharts.js¡¢echarts.js¡¡¡¡¡£ÓÉÓÚ¹«Ë¾¶ÔÕâ¸öÏîÄ¿µÄÐèÇóÊÇ1¡¢¿ª·¢Ê±¼ä¶Ì£¬ËùÒÔÒ²¾ÍÏÞÖÆÁËD3.jsµÄʹÓá£2¡¢Òª¾¡Á¿µÄ¼õÉÙ¿ª·¢µÄ³É±¾£¬ËùÒÔÒ²¾Í²»ÄÜʹÓÃhightcharts.js(hightchartsÊÇÒ»¿î¸öÈËÃâ·Ñ£¬ÉÌÒµ¸¶·ÑµÄ¿ò¼Ü)¡£ËùÒÔÔÚÔÙÈýµÄ±È¶ÔÖ®ÏÂ×îÖÕÑ¡ÔñÁËecharts.js
¶þ¡¢echarts.jsµÄÓÅÊÆÓë×ÜÌåÇé¿ö
echarts.js×÷Ϊ¹úÄÚµÄITÈý¾ÞÍ·Ö®Ò»µÄ°Ù¶ÈµÄÍÆ³öÒ»¿îÏà¶Ô½ÏΪ³É¹¦µÄ¿ªÔ´ÏîÄ¿£¬×ÜÌåÉÏÀ´ËµÓÐÕâÑùµÄһЩÓŵã
1¡¢echarts.jsÈÝÒ×ʹÓÃ
echarts.jsµÄ¹Ù·½Îĵµ±È½ÏÏêϸ£¬¶øÇÒ¹ÙÍøÖÐÌṩ´óÁ¿µÄʹÓÃʾÀý¹©´ó¼ÒʹÓÃ
2¡¢echarts.jsÖ§³Ö°´ÐèÇó´ò°ü
echarts.js¹ÙÍøÌṩÁËÔÚÏß¹¹½¨µÄ¹¤¾ß£¬¿ÉÒÔÔÚÏß¹¹½¨ÏîĿʱ£¬Ñ¡ÔñÏîÄ¿ËùÐèҪʹÓõ½µÄÄ£¿é£¬´Ó¶ø´ïµ½¼õСJSÎļþµÄÌå»ý
3¡¢echarts.js¿ªÔ´
4¡¢Ö§³ÖÖйúµØÍ¼¹¦ÄÜ
Õâ¸öÔÚÆäËûµÄһЩ¿ò¼ÜÖÐÊÇûÓеģ¬ËùÒÔΪÕâ¸ö¹¦Äܵã¸öÔÞ
µ«ÊÇecharts.jsÒ²´æÔÚ×ÅһЩ²»ºÃµÄµØ·½£¬±ÈÈç˵£º
1¡¢echarts.jsµÄÌå»ý½Ï´ó
Ò»¸ö»ù´¡µÄecharts.js¶¼Òª400K×óÓÒ£¬Ïà¶ÔÓÚD3.jsºÍhightcharts.jsÀ´Ëµ¶¼ÊDZȽϴóµÄ
2¡¢echarts.jsµÄ¿É¶¨ÖÆÐÔ²î
˵µ½echarts.jsµÄ¶¨ÖÆÐԲÆäʵ²»Ö¹ÊǰüÀ¨echarts.js£¬hightcharts.jsÒ²ÊÇÈç´Ë£¬ÒòΪÕâÒ»ÀàÐ͵ÄÊý¾Ý¿ÉÊÓ»¯¿ò¼ÜÖ÷ÒªÊǸ߶ȵĽøÐзÖ×°£¬ËùÒÔÄãÔÚʹÓõÄʱºòÖ»ÐèÒªÉèÖÃÒ»ÏÂÅäÖþͿÉÒÔÁË£¬µ«ÊÇÈç¹ûÊdzöÏÖÁËÒª»æÖÆÅäÖÃÖв»Ö§³ÖµÄͼ±íÔõô°ì£¬ÄÇôÄã¾ÍÖ»ÄÜ·ÅÆú£¬³¢ÊÔ×ÅʹÓÃÆäËûµÄ¿ò¼ÜÁË
×ܵÄÀ´Ëµ:´Ó´óµÄ·½ÏòÉÏÃæÀ´¿´£¬echarts.js»¹ÊÇÖµµÃÈ¥Á˽âѧϰʹÓõģ¬ÒòΪecharts.jsµÃµ½Á˰ٶÈÍŶӵÄÖØÊÓ£¬ÔÚgitÉÏÃæµÄ¸üÐÂÒ²ÊÇ±È½ÏµÄÆµ·±£¬ËùÒÔ²»»á³öÏÖһЩ±È½ÏÑÏÖØµÄbugÖ®ÀàµÄ£¬×îºóÕâ¿î¿ò¼ÜÒ»µã¾ÍÊÇ¿ò¼ÜµÄÅäÖÃÎļþÏ൱µÄÏêϸ£¬µ«Êǽ»»¥APIÎĵµËäÈ»ÓÐ˵Ã÷£¬µ«ÊÇ»¹ÊÇûÓÐʾÀýÀ´¾ÙÖ¤£¬Õâ¸ö¿ÉÄܾÍÊÇÎÒÈÏΪµÄÒ»¸ö²»×ãÖ®´¦°É
Èý¡¢echartsµÄÓ¦ÓÃ
Ê×ÏÈҪ˵Ã÷Ò»µãÊÇ£¬echartsÕâ¸ö¿ò¼ÜµÄÅäÖÃÄÚÈݺÜÊǶ࣬ËùÒÔ²»Òª³¢ÊÔ×ŰÑÕâ¸ö¿ò¼ÜÖеķ½·¨¶¼¸ø¼Çס£¬ÕâÊDz»Ì«¿ÉÄܵÄÊ¡£µ«ÊÇÓÉÓÚÕâ¸ö¿ò¼ÜµÄÅäÖÃÎļþ²ÎÊý±È½Ï¶à£¬ËùÒÔÎÒÃǾÍÐèÒªÀ´Ñ§Ï°Ò»ÏÂechartsÊÇÔõÑùÀ´¶ÔÆä½øÐзÖÀàµÄ
1¡¢Ê×ÏÈechartsµÄͼÐλ¯³ÊÏÖÖ÷ÒªÊÇͨ¹ýÅäÖ÷½·¨À´ÊµÏÖµÄ(setOption),È»ºóÊǶÔͼÐαêÇ©½øÐгõʼ»¯£¬×îºó°ÑÅäÖ÷½·¨(setOption)¸³Öµµ½³õʼ»¯Í¼ÐÎÖУ¬ÏêϸµÄÅäÖÃÎļþÇë´ÁÕâÀÕâÀïÎÒ¾ÍÀ´½éÉÜһϹØÓÚÅäÖÃÎļþµÄѧϰµÄ¾Ñé̸֮£¬±È½Ï³£¼ûµÄÅäÖôóÖÂÈçÏÂͼ£º

ÉÏÃæÓúìÉ«·½¿ò±ê³öÀ´µÄ¾ÍÊÇechartsµÄ»ù´¡ÅäÖã¬Ò²ÊÇÎÒÈÏΪµÄѧϰechartsÒ»¶¨ÒªÕÆÎÕµÄÅäÖã¬ÆäËûµÄһЩÅäÖñÈÈçʲôʱ¼äÖá.visualMap×é¼þÖ®À࣬ÎÒÈÏΪÕâЩÒìÇúͬ¹¤£¬ËùÒÔÕâÒ»²¿·ÖÒ²¾ÍÊÇÖ»ÓÐÔÚµ±ÄãµÄÒµÎñÐèҪʹÓõÄʱºò²Å¼ÓÈ룬Ҳ¾ÍÊÇ˵£¬ÕâÒ»²¿·ÖµÄ֪ʶÎÒÈÏΪµ½Ê±ºòÏÖ³´ÏÖÂô¾Í¿ÉÒÔÁË£¨¸üÕý£ºÍ¼±êÐüÍ£µÄÌáʾÄÚÈÝÓ¦¸Ã¸üÕýΪÊó±êÐüÍ£µÄÌáʾÄÚÈÝ£©£¬ÏÂÃæÎÒ¾ÍÀ´½²½âÒ»ÏÂecharts.jsµÄʹÓã¬Ê×ÏÈÎÒÔÚ¹ÙÍøÖÐÏÂÔØÄ¬Èϵľ«¼ò°æ£¬ÏÂÔØµØÖ·ÈçÏ£ºhttp://echarts.baidu.com/builder.html£¬Ö±½ÓÏÂÔØ¼´¿É£¨½¨ÒéÔÚ¿ª·¢ÆÚ¼äʹÓÃÔ´Âë°æ£¬·½±ãµ÷ÊÔ£©
3.1 echarts.jsÈëÃÅ»ù´¡Ð¡ÏîÄ¿1
HTMLºÍJavaScript´úÂ룺
<!DOCTYPE
html>
<html lang="en">
<head> <meta charset="UTF-8">
<title>echarts.js°¸ÀýÒ»</title> <script
type="text/javascript" src='echarts.js'></script>
</head>
<body> <div id="chart"
style="width:400px;height:400px;"></div>
</body>
<script type="text/javascript">
// ³õʼ»¯Í¼±í±êÇ©
var myChart = echarts.init(document.getElementById('chart'));
var options={
//¶¨ÒåÒ»¸ö±êÌâ
title:{
text:'²âÊԳɼ¨'
},
legend:{
data:['ÏúÁ¿']
},
//XÖáÉèÖÃ
xAxis:{
data:['60·Ö','70·Ö','80·Ö','90·Ö','100·Ö']
},
yAxis:{
},
//name=legend.dataµÄʱºò²ÅÄÜÏÔʾͼÀý
series:[{
name:'ÏúÁ¿',
type:'bar',
data:['12','32','45','21','1']
}]
};
myChart.setOption(options);
</script>
</html> |
ÔËÐÐЧ¹ûÈçÏÂͼ
×¢ÒâÊÂÏÕâÀï°¸ÀýÊÇ×î»ù´¡£¬µ«ÊÇÀïÃæ»¹ÊÇÓÐÒ»¸ö֪ʶµãÀ´µÄ£¬¾ÍÊÇÔÚʹÓÃecharts.jsµÄʱºòÒ»¶¨ÒªÅäÖÃxAxis,yAxis,seriesÕâÈý¸ö²ÎÊý£¬Èç¹ûÊDz»ÏëÉèÖõĻ°Ò²Òª³õʼ»¯¿ÉÒÔ½«ÆäÉèÖÃΪ¿ÕJSON¾Í¿ÉÒÔÁË£¬Òª²»È»»á³öÏ´í£¬Í¬Ê±Òª±£Ö¤ÔÚecharts.init֮ǰµÄ¶ÔÏóÊÇÓпí¸ßµÄ£¬Òª²»È»Ò²»á³öÏÖ´íÎó
3.2 echarts.js¶àϵÁÐ×ÛºÏʹÓÃDEMO
ÔÚ½²½âÕâ¸ö°¸Àý֮ǰ£¬Ê×ÏÈÎÒÃÇÀ´¼ÙÉèÒ»¸öÃüÌ⣬¼ÙÉèҪͳ¼ÆÒ»¸öÉ̵êÒ»ÖܵĹºÂò½ð¶îºÍÒ»ÖܵÄÏúÊÛ½ð¶î£¬ÆäÖеĹºÂò½ð¶îÓÃÖù״ͼ±íʾ£¬ÏúÊÛ½ð¶îÓÃÕÛÏßͼ±íʾ£¬È»ºó»¹Òª±ê³öÒ»ÖÜÖÐ×î´óÖµºÍ×îСֵ£¬Í¬Ê±»¹ÒªÇó³öÏúÊۺ͹ºÂòµÄƽ¾ùÊý£¬¹ºÂò½ð¶î·Ö±ðÊÇ[200,312,431,241,175,275,369]£¬ÏúÊÛ½ð¶î[321,432,543,376,286,298,400]
Õâ¸öÎÊÌâÆäʵҲ²»ÊǺÜÄÑ£¬ÏëÒ»Ï룬ÆäʵҲ¾ÍÊÇÒ»¸ö°Ñ¶à¸ö ϵÁÐͼ±íÓ¦Óõ½Ò»¸ö»²¼ÉÏÃæµÄ¹ý³Ì£¬ÎªÁ˼ò¶ÌÎÄÕÂµÄÆª·ù£¬ËùÒ԰Ѳ»Ìù³öÈ«²¿µÄ´úÂ룬½öÌù³öÖ÷ÒªµÄÆäÖйؼüµÄ´úÂ룬´úÂëÈçÏ£º
series:[{
name:'¹ºÂò½ð¶î',
type:'bar',
data:[200,312,431,241,175,275,369],
markPoint: {
data: [
{type: 'max', name: '×î´óÖµ'},
{type: 'min', name: '×îСֵ'}
]
},
markLine:{
data:[
{type:'average',name:'ƽ¾ùÖµ',itemStyle:{
normal:{
color:'green'
}
}}
]
}
},{
name:'ÏúÊÛ½ð¶î',
type:'line',
data:[321,432,543,376,286,298,400],
markPoint: {
data: [
{type: 'max', name: '×î´óÖµ'},
{type: 'min', name: '×îСֵ'}
]
},
markLine:{
data:[
{type:'average',name:'ƽ¾ùÖµ',itemStyle:{
normal:{
color:'blue'
}
}}
]
}
}] |
ʵÏÖЧ¹û£º

ÈçÐè¿´ÍêÕûµÄ´úÂëÇë´ÁÕâÀ×ÔÐÐforkÏÂÀ´
3.3 echarts.jsÏìӦʽʵÏÖ
echartsÏìӦʽÔÚecharts¹ÙÍøÉÏÃæµÄ½éÉܱȽÏÏêϸ£¬ÕâÀïÔÀí¸úCSS3µÄýÌå²éѯÓеãÀàËÆ£¬µ«ÊÇecharts.jsµÄÏìÓ¦³ýÁËÖ§³ÖýÌå²éѯµÄÔÚ²»Í¬Çé¿öÏÂÃæµÄÏàÓ¦»¹Ö§³Ö£¬¸ù¾Ý³¤¿í±ÈÀ´ÏàÓ¦µÄ·½·¨£¬µ«ÊÇÔÚ¹Ù·½ÎĵµÖл¹ÊÇÓÐÒ»µãȱÏݵ쬱ÈÈ磺һ¸öÊǰ¸ÀýÖеÄÏìӦʽûÓÐÉæ¼°µ½´¦ÀíseriesÖ®ÍâµÄÏìÓ¦£¬ÁíÍâÒ»¸öÊǰ´ÕÕDEMOÖÐÈ¥×ö£¬»á·¢ÏÖÿ´Î¶¼ÒªË¢ÐÂÒ³Ãæ²ÅÄܳöÏÖÏìÓ¦µÄ½á¹û£¬ËùÒÔÏÂÃæÎÒ½«Ð´Ò»¸ö¼òµ¥µÄ°¸ÀýÀ´½â¾öÕâЩÎÊÌ⣬Êý¾ÝÑùʽÓëÉÏÃæµÄÀý×ÓÒ»Ñù
ÕâÀï¾Í°ÑËùÓеÄJS´úÂëÌù³öÀ´£º
var echart=echarts.init(document.getElementById('main1'));
var option={
baseOption:{
title:{
text:'Ä£ÄâÉ̵êÒ»ÖÜÏúÊÛÇé¿ö',
subtext:'ÐéÄâÊý¾Ý'
},
legend:{
data:['¹ºÂò½ð¶î','ÏúÊÛ½ð¶î']
},
xAxis:{
data:['ÖÜÒ»','Öܶþ','ÖÜÈý','ÖÜËÄ','ÖÜÎå','ÖÜÁù','ÖÜÈÕ']
},
yAxis:{
},
tooltip:{
show:true,
formatter:'ϵÁÐÃû:{a}<br />ÀàÄ¿:{b}<br />ÊýÖµ:{c}'
},
series:[{
name:'¹ºÂò½ð¶î',
type:'bar',
data:[200,312,431,241,175,275,369],
markPoint: {
data: [
{type: 'max', name: '×î´óÖµ'},
{type: 'min', name: '×îСֵ'}
]
},
markLine:{
data:[
{type:'average',name:'ƽ¾ùÖµ',itemStyle:{
normal:{
color:'green'
}
}}
]
}
},{
name:'ÏúÊÛ½ð¶î',
type:'line',
data:[321,432,543,376,286,298,400],
markPoint: {
data: [
{type: 'max', name: '×î´óÖµ'},
{type: 'min', name: '×îСֵ'}
]
},
markLine:{
data:[
{type:'average',name:'ƽ¾ùÖµ',itemStyle:{
normal:{
color:'blue'
}
}}
]
}
}]
},
media:[
{
//СÓë1000ÏñËØÊ±ºòÏìÓ¦
query:{
maxWidth:1000
},
option:{
title:{
show:true,
text:'²âÊÔÒ»ÏÂ'
}
}
}
]
};
//ÿ´Î´°¿Ú´óС¸Ä±äµÄʱºò¶¼»á´¥·¢onresizeʼþ£¬Õâ¸öʱºòÎÒÃǽ«echarts¶ÔÏóµÄ³ß´ç¸³Öµ¸ø´°¿ÚµÄ´óСÕâ¸öÊôÐÔ£¬´Ó¶øÊµÏÖͼ±í¶ÔÏóÓë´°¿Ú¶ÔÏóµÄ³ß´çÒ»ÖµÄÇé¿ö
window.onresize = echart.resize;
echart.setOption(option); |
Ч¹ûչʾ£ºÔ±¾ÊÇÏëҪչʾGIFµÄ£¬µ«ÊÇÂ¼ÖÆµÄʱºò¿¨¶ÙÌ«ÑÏÖØËùÒÔÒ²¾ÍÖ»ÄÜ·¢Ò»ÏÂÔÚÎÞˢеÄʱºò¶Ô±ÈͼƬ


3.4 echartsµÄAPI½»»¥
Ê×ÏÈÎÒÃÇÀ´ÀíÇå¹Ù·½ÎĵµÖеÄAPIµÄ·ÖÀ࣬´óÖµÄAPI¿ÉÒÔ·Ö³ÉÕâÑùµÄËÄÀà

ÕâÀïÎÒÃǾÍÀ´½âÊÍÒ»ÏÂecharts¶ÔÏóÀïÃæÖ÷ÒªÊǰüÀ¨Ò»Ð©Ïú»Ù¶ÔÏó(dispose)£¬×¢²áµØÍ¼(registerMap)£¬³õʼ»¯¶ÔÏó(echarts.init),¹ØÁª¶ÔÏó(connect)£¬ÊôÓÚÈ«¾ÖÊôÐÔµÄÉèÖã¬echartsInstanceÕâ¸öÊǰüº¬echartsͼÖеÄijЩÊôÐԵĻñÈ¡»òÕßÉèÖ㬻ñÈ¡¿í¸ß(getWidth¡¢getHeight),»ñÈ¡ÅäÖÃ(getOption)£¬ÉèÖÃÅäÖÃ(setOption)µÈ²Ù×÷actionºÍeventsÕâÁ½¸ö²Ù×÷ÔÚÉÏͼÖÐÒѾºÜÃ÷°×ÁË£¬ËùÒԾͲ»¶à×ö½âÊÍ£¬¾ßÌåµÄʹÓ÷½·¨ÒªÓëÒµÎñ½øÐйҹ³²ÅÓÐÒâÒ壬ËùÒÔÔÚÕâÀï¾Í²»ÌṩDEMOÁË£¬ÎÒÏàÐÅ´ó¼Ò¿´Ò»ÏÂÎĵµ¶¼Äܹ»¿´¶®¸ö¾¿¾¹¡£
ËÄ¡¢echarts³£¼ûÎÊÌâ½â¾ö
1¡¢µ±XÖáÉÏÃæÒªäÖȾµÄÊý¾ÝÌ«¶àµÄʱºò¾Í»á³öÏÖÖ»äÖȾ³öÀ´Ò»²¿·Ö£¬µ«ÊÇͼ±íÖеÄÊý¾ÝÏÔʾ(±ÈÈç˵Öù״ͼÖеÄÿ¸öÖù×Ó)ÓÖ»á×Ô¶¯µÄ½øÐпí¶ÈµÄËõ·Å£¬ËùÒԻᵼÖÂXÖáÓëͼÖеÄÐÅÏ¢²»ÏàÆ¥ÅäµÄÎÊÌ⣬½â¾öµÄ·½·¨ÊÇÔÚXÖáÉèÖÃaxisLabel
:{ interval:0 }Õâ¸öÊôÐÔÎÊÌâ¾Í¿ÉÒÔ½â¾öÁË£¬YÖáµÄʹÓ÷½·¨Ïàͬ
2¡¢ÎªÁËʹechartͼ±íËæ×Åä¯ÀÀÆ÷µÄ´óС·¢ÉúÏìӦʽ±ä»¯£¬ËùÒÔÐèÒªÔÚÉèÖÃÅäÖÃ֮ǰÌí¼Ó window.onresize
= echart.resize; ¾ßÌå²ÎÕÕ3.3 ʾÀý
Îå¡¢×ܽá
ËäÈ»echartsÔÚͬÀàÐ͵ÄÊý¾Ý¿ÉÊÓ»¯¿ò¼ÜÖл¹ËãÊDZȽϵļòµ¥Ò×Óõ쬵«ÊÇÔÚÈëÊÖµÄʱºò¿ÉÄÜÒ²»áÓÐһЩ±È½ÏÂé·³µÄµØ·½À§ÈÅ×ÅÄ㣬±ÈÈçÎĵµÕâô¶àÎÒÔõô¿´£¬ÊµÀýÒѾ±È½ÏÆëÈ«ÁËÎÒ»¹ÐèÒª¿´APIÎĵµÂð£¬ÕâЩÎÊÌâÎÒÏëÔÚÕâÀïͳһµÄ˵һÏ£¬ÆäʵechartsµÄѧϰÎÞÍâºõ¾ÍÊÇÏÈÁ˽âһϿò¼Ü´óÖÂÉϵķÖÀ࣬ȻºóÊÇÔÚ½«È«²¿µÄAPIÔĶÁÒԱ㣬ʹ¶Ô¿ò¼ÜÓÐÒ»¸öÈ«¾ÖµÄÈÏʶ£¬È»ºóÔÚͨ¹ýʵ¼ùÈ¥ÉîÈëѧϰ£¬Ê¾ÀýÖ»²»¹ýÊÇÕâÒ»²½µÄÒ»¸ö¸¨Öú¶øÒÑ£¬Ö»ÓÐÔúÔúʵʵµÄͨ¹ýѧϰAPIÒ»²½Ò»¸ö½ÅÓ¡È¥Á˽âѧϰ£¬²ÅÄÜ×öµ½ÔÚʹÓõÄʱºòÐÄÖÐÓеס£ÒÔÉϵÄÎÄÕÂÊDz©Ö÷ÔÚѧϰºÍÏîÄ¿ÖÐʹÓÃechartsµÄһЩÌå»á£¬Ï£Íû¶Ô´ó¼ÒÓаïÖú
|