1.因项目所需,根据后台返回的数据记录,绘制某一时间段(时间段间隔自己划分)出价记录折线图

2.尝试过echarts,highcharts绘制,其中highcharts有期待图形效果,不过没有解决X轴时间刻度自定义划分,highcharts代码见3;
3.附:
varLnames=["供应商1","供应商2"];
vardata=[//供应商1的数据,其中1478050088000是时间戳
[1478050088000,856],
[1478050364000,781],
[1478050786000,744],
];
vardata1=[//供应商2的数据
[1478050864000,732],
[1478050775000,775],
[1478050297000,785]
];
vardataxLabel=[//自定义刻度线数组!!!
'2016-11-0201:25:00','2016-11-0201:30:00',
'2016-11-0201:35:00','2016-11-0201:40:00',
'2016-11-0201:45:00'
];
for(vari=0;i<dataxLabel.length;i++){//刻度线数组转时间戳
vartm=newDate(dataxLabel[i]).getTime();
dataxLabel[i]=tm;
}
varchart=Highcharts.chart('container',{
chart:{
renderTo:'content',
type:'line',
zoomType:'xy',
},
title:{
text:null
},
subtitle:{
text:null
},
tooltip:{
headerFormat:'<spanstyle="color:{series.color};"></span><span>{point.key}</span>',
pointFormat:'<table>'+
'<tr><tdstyle="color:{series.color};">{series.name}:</td>'+
'<td><b>{point.y:.0f}</b></td></tr>',
footerFormat:'</table>',
shared:true,
useHTML:true,
xDateFormat:'%Y-%m-%d%H:%M:%S'
},
//3.type:"datetime"
xAxis:{
type:"datetime",
//categories:dataxLabel,
tickInterval:3600*1000/60*5,
dateTimeLabelFormats:{
minute:'%Y-%m-%d%H:%M:%S',
},
//tickPixelInterval:1,
},
yAxis:{
title:{
text:'Price'
},
plotLines:[{
value:0,
width:1,
color:'#808080'
}]
},
legend:{
layout:'vertical',
align:'center',
verticalAlign:'bottom',
borderWidth:0
},
series:[{
name:Lnames[0],
data:data,
},{
name:Lnames[1],
data:data1,
}]
})

4、请教大家有无其他方法绘制此类图形;




1 个解决方案

#1


ps有绘制过此类型图表欢迎联系我微信yijinbean

更多相关文章

  1. 如何改变d3中线性标度产生的刻度值。js情节?

随机推荐

  1. 每日 (No.0x01)ECMAScript 2016,2017和20
  2. Python中的“特权种族”是什么?
  3. 超强汇总:学习Python列表,只需这篇文章就够
  4. 每日前端夜话(0x05):2018年JavaScript状态
  5. 排序算法 #4 再讲插入排序
  6. 数据结构 #1 浅谈数组
  7. 再谈文件读写:判断文件的几种方法及其优劣
  8. 从一篇Blog看两个并发编程错误
  9. 每日前端夜话(0x04):2018年JavaScript状态
  10. LeetCode #27 移除元素