echarts绘制数据过多的图表,tooltip提示框样式自定义

  • 最近在做echarts图表的时候,由于数据过多,导致tooptip被遮盖,显示不全各种问题,记录一下踩过的坑*
  1. 设置tooltipappendToBody: true,结果如图:

echarts绘制数据过多的图表,tooltip提示框样式自定义_第1张图片
更多的还是显示不全;

  1. 设置extraCssText也没起多大作用;
  2. 最后采用了formatter回调函数的方式,自己拼写字符串,写行内样式,最主要的是设置一个最大高度,再设置内容超出滚动,包括设置backgroundColortextStyle,最终解决了问题,如图:

echarts绘制数据过多的图表,tooltip提示框样式自定义_第2张图片
设置最大高度,而高度设置为自动时,数据不多的情况下就没有滚动条

重点来了,附上代码

tooltip: {
  trigger: 'axis',
  axisPointer: { // 坐标轴指示器,坐标轴触发有效
    type: 'shadow' // 默认为直线,可选为:'line' | 'shadow'
  },
  enterable: true, // 鼠标是否可进入提示框浮层中
  hideDelay: 200, // 浮层隐藏的延迟
  confine: true,
  backgroundColor: 'rgba(255,255,255, 1)',
  formatter: function (params) {
    var htmlStr = '

' + params[0].axisValue + '

'; for (var i = 0; i < params.length; i++) { htmlStr += '

' + params[i].marker + params[i].seriesName + ':' + params[i].value + '

'; } htmlStr += '
' return htmlStr }, extraCssText: 'box-shadow: 0 0 3px rgba(150,150,150, 0.7);', textStyle: { fontSize: 12, color: '#fff' } }, legend: { type: 'scroll', orient: 'horizontal', left: 15, right: 15, bottom: 10, data: legendData, pageButtonPosition: 'end' },

`
就这样吧~~~

你可能感兴趣的:(前端,html5,echarts)