K线图

<div id="main" style="width:100%;height:800px;border:1px solid gainsboro;"></div>

<script src="js/jquery.min.js"></script>

<script src="js/echarts.js"></script>

//js代码

var data0 = splitData([

['2013/1/24', 2020.26, 2320.26, 2287.3, 2362.94],

['2013/1/25', 2300, 2291.3, 2288.26, 2308.38],

['2013/1/28', 2295.35, 2346.5, 2295.35, 2346.92],

['2013/1/29', 2347.22, 2358.98, 2337.35, 2363.8],

['2013/1/30', 2360.75, 2382.48, 2347.89, 2383.76],

['2013/1/31', 2383.43, 2385.42, 2371.23, 2391.82],

['2013/2/1', 2377.41, 2419.02, 2369.57, 2421.15],

['2013/2/4', 2425.92, 2428.15, 2417.58, 2440.38],

['2013/2/5', 2411, 2433.13, 2403.3, 2437.42],

['2013/2/6', 2432.68, 2434.48, 2427.7, 2441.73],

['2013/2/7', 2430.69, 2418.53, 2394.22, 2433.89],

['2013/2/8', 2416.62, 2432.4, 2414.4, 2443.03],

['2013/2/18', 2441.91, 2421.56, 2415.43, 2444.8],

['2013/2/19', 2420.26, 2382.91, 2373.53, 2427.07],

['2013/2/20', 2383.49, 2397.18, 2370.61, 2397.94],

['2013/2/21', 2378.82, 2325.95, 2309.17, 2378.82],

['2013/2/22', 2322.94, 2314.16, 2308.76, 2330.88],

['2013/2/25', 2320.62, 2325.82, 2315.01, 2338.78],

['2013/2/26', 2313.74, 2293.34, 2289.89, 2340.71],

['2013/5/30', 2316.25, 2317.75, 2310.49, 2325.72],

['2013/5/31', 2320.74, 2300.59, 2299.37, 2325.53],

['2013/6/3', 2300.21, 2299.25, 2294.11, 2313.43],

['2013/6/4', 2297.1, 2272.42, 2264.76, 2297.1],

['2013/6/5', 2270.71, 2270.93, 2260.87, 2276.86],

['2013/6/6', 2264.43, 2242.11, 2240.07, 2266.69],

['2013/6/7', 2242.26, 2210.9, 2205.07, 2250.63],

['2013/6/13', 2190.1, 2148.35, 2126.22, 2190.1]

]);

function splitData(rawData) {

var categoryData = [];

var values = []

for(var i = 0; i < rawData.length; i++) {

categoryData.push(rawData[i].splice(0, 1)[0]);

values.push(rawData[i])

}

return {

categoryData: categoryData,

values: values

};

}

function calculateMA(dayCount) {

var result = [];

for(var i = 0, len = data0.values.length; i < len; i++) {

if(i < dayCount) {

result.push('-');

continue;

}

var sum = 0;

for(var j = 0; j < dayCount; j++) {

sum += data0.values[i - j][1];

}

result.push(sum / dayCount);

}

return result;

}

option = {

title: {

text: '上证指数',

left: 0

},

tooltip: {

trigger: 'axis',

axisPointer: {

type: 'cross'

}

},

legend: {

data: ['日K', 'MA5', 'MA10', 'MA20', 'MA30']

},

grid: {

left: '10%',

right: '10%',

bottom: '15%'

},

xAxis: {

type: 'category',

data: data0.categoryData,

scale: true,

boundaryGap: false,

axisLine: {

onZero: false

},

splitLine: {

show: false

},

splitNumber: 20,

min: 'dataMin',

max: 'dataMax'

},

yAxis: {

scale: true,

splitArea: {

show: true

}

},

dataZoom: [{

type: 'inside',

start: 50,

end: 100

},

{

show: true,

type: 'slider',

y: '90%',

start: 50,

end: 100

}

],

series: [{

name: '日K',

type: 'candlestick',

data: data0.values,

itemStyle: {

normal: {

color: upColor,

color0: downColor,

borderColor: upBorderColor,

borderColor0: downBorderColor

}

},

markPoint: {

label: {

normal: {

formatter: function(param) {

return param != null ? Math.round(param.value) : '';

}

}

},

data: [{

name: 'XX标点',

coord: ['2013/5/31', 2300],

value: 2300,

itemStyle: {

normal: {

color: 'rgb(41,60,85)'

}

}

},

{

name: 'highest value',

type: 'max',

valueDim: 'highest'

},

{

name: 'lowest value',

type: 'min',

valueDim: 'lowest'

},

{

name: 'average value on close',

type: 'average',

valueDim: 'close'

}

],tooltip: {formatter: function(param) {return param.name + '

' + (param.data.coord || '');}}},markLine: {symbol: ['none', 'none'],data: [[{name: 'from lowest to highest',type: 'min',valueDim: 'lowest',symbol: 'circle',symbolSize: 10,label: {normal: {show: false},emphasis: {show: false}}},{type: 'max',valueDim: 'highest',symbol: 'circle',symbolSize: 10,label: {normal: {show: false},emphasis: {show: false}}}],

{

name: 'min line on close',

type: 'min',

valueDim: 'close'

},

{

name: 'max line on close',

type: 'max',

valueDim: 'close'

}

]

}

},

{

name: 'MA5',

type: 'line',

data: calculateMA(5),

smooth: true,

lineStyle: {

normal: {

opacity: 0.5

}

}

},

{

name: 'MA10',

type: 'line',

data: calculateMA(10),

smooth: true,

lineStyle: {

normal: {

opacity: 0.5

}

}

},

{

name: 'MA20',

type: 'line',

data: calculateMA(20),

smooth: true,

lineStyle: {

normal: {

opacity: 0.5

}

}

},

{

name: 'MA30',

type: 'line',

data: calculateMA(30),

smooth: true,

lineStyle: {

normal: {

opacity: 0.5

}

}

},

]

}

echarts.setOption(option);

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,569评论 4 363
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,499评论 1 294
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,271评论 0 244
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,087评论 0 209
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,474评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,670评论 1 222
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,911评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,636评论 0 202
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,397评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,607评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,093评论 1 261
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,418评论 2 254
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,074评论 3 237
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,092评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,865评论 0 196
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,726评论 2 276
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,627评论 2 270

推荐阅读更多精彩内容