Vue使用Echarts实现排行榜效果
(福利推荐:你还在原价购买阿里云服务器?现在阿里云0.8折限时抢购活动来啦!4核8G企业云服务器仅2998元/3年,立即抢购>>>:9i0i.cn/aliyun)
Vue使用 Echarts 做出排行榜的感觉,供大家参考,具体内容如下
其实这不算是一篇技术文的,就是单纯的echarts调样式就可以,但是有的地方设置还是不好设置的,所以说嘞,就保存一下吧,以后自己用到了的话课可以直接拿来修修改改就可以二次利用了。
做出来的效果就是这个样子:
这个排行榜一共就展示前六,就是这个样子,然后把这个echarts搞成了一个组件,在需要的地方引用就可以了。
下面直接上代码:
<doc> ? 柱形图-排行榜 </doc> <template> ? <div id="bar" style="width: 100%;height:100%;"></div> </template> <script> ? import * as echarts from 'echarts' ? export default { ? ? data() { ? ? ? return { ? ? ? ? xValue: [1,1,1,2,3,3], ? ? ? ? yValue: ['陕西移动', '山西移动', '北京移动', '山东移动', '河北移动', '河南移动'], ? ? ? }; ? ? }, ? ? mounted() { ? ? ? this.show() ? ? }, ? ? methods: { ? ? ? show() { ? ? ? ? this.charts = echarts.init(document.getElementById('bar')) ? ? ? ? var option = { ? ? ? ? ? color: ['#d84430'], ? ? ? ? ? tooltip: { ? ? ? ? ? ? show: true ? ? ? ? ? }, ? ? ? ? ? yAxis: { ? ? ? ? ? ? axisTick: { ? ? ? ? ? ? ? show: false ? ? ? ? ? ? }, ? ? ? ? ? ? axisLine: { ? ? ? ? ? ? ? show: false, ? ? ? ? ? ? }, ? ? ? ? ? ? axisLabel: { ? ? ? ? ? ? ? inside: true, ? ? ? ? ? ? ? verticalAlign: 'bottom', ? ? ? ? ? ? ? lineHeight: 40, ? ? ? ? ? ? ? color: '#DDDFEB', ? ? ? ? ? ? ? formatter: function (value, index) { ? // 设置y轴文字的颜色 ? ? ? ? ? ? ? ? if (index > 2) { ? ? ? ? ? ? ? ? ? return '{first|' + value + '}' ? ? ? ? ? ? ? ? } else { ? ? ? ? ? ? ? ? ? return '{other|' + value + '}' ? ? ? ? ? ? ? ? } ? ? ? ? ? ? ? }, ? ? ? ? ? ? ? rich: { ? ? ? ? ? ? ? ? other: { ? ? ? ? ? ? ? ? ? color: '#DDDFEB', ? ? ? ? ? ? ? ? ? opacity: 0.57 ? ? ? ? ? ? ? ? }, ? ? ? ? ? ? ? ? first: { ? ? ? ? ? ? ? ? ? color: '#DDDFEB' ? ? ? ? ? ? ? ? } ? ? ? ? ? ? ? } ? ? ? ? ? ? }, ? ? ? ? ? ? data: this.yValue ? ? ? ? ? }, ? ? ? ? ? xAxis: { ? ? ? ? ? ? nameTextStyle: { ? ? ? ? ? ? ? color: 'rgba(255, 255, 255, 0.8)', ? ? ? ? ? ? ? align: 'right' ? ? ? ? ? ? }, ? ? ? ? ? ? splitLine: { ? ? ? ? ? ? ? show: false, ? ? ? ? ? ? }, ? ? ? ? ? ? axisLine: { ? ? ? ? ? ? ? show: false, ? ? ? ? ? ? }, ? ? ? ? ? ? axisLabel: { ? ? ? ? ? ? ? color: 'rgba(255, 255, 255, 0.8)' ? ? ? ? ? ? }, ? ? ? ? ? }, ? ? ? ? ? grid: { ? ? ? ? ? ? top: '0%', ? ? ? ? ? ? bottom: '0%', ? ? ? ? ? ? left: '0%', ? ? ? ? ? ? right: '0%' ? ? ? ? ? }, ? ? ? ? ? series: [{ ? ? ? ? ? ? name: '预警排行榜', ? ? ? ? ? ? barWidth: 15, ? ? ? ? ? ? type: 'bar', ? ? ? ? ? ? data: this.xValue, ? ? ? ? ? ? itemStyle: { ? ? ? ? ? ? ? normal: { ? ? ? ? ? ? ? ? borderRadius: [3, 20, 20, 3], ? ? ? ? ? ? ? ? color: function (params) { ? // 设置柱形图的颜色 ? ? ? ? ? ? ? ? ? if (params.dataIndex === 5) { ? ? ? ? ? ? ? ? ? ? return '#d84430' ? ? ? ? ? ? ? ? ? } else if (params.dataIndex === 4) { ? ? ? ? ? ? ? ? ? ? return '#f38237' ? ? ? ? ? ? ? ? ? } else if (params.dataIndex === 3) { ? ? ? ? ? ? ? ? ? ? return '#e2aa20' ? ? ? ? ? ? ? ? ? } else { ? ? ? ? ? ? ? ? ? ? return '#608289' ? ? ? ? ? ? ? ? ? } ? ? ? ? ? ? ? ? } ? ? ? ? ? ? ? }, ? ? ? ? ? ? } ? ? ? ? ? }] ? ? ? ? }; ? ? ? ? // 使用刚指定的配置项和数据显示图表。 ? ? ? ? this.charts.setOption(option); ? ? ? ? window.addEventListener('resize', () => { ? ? ? ? ? this.charts.resize() ? ? ? ? }) ? ? ? } ? ? } ? } </script> <style scoped> </style>
就是这个样子,如果有特别的样式可以稍微改一下。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持程序员之家。
相关文章
使用element-ui table expand展开行实现手风琴效果
这篇文章主要介绍了使用element-ui table expand展开行实现手风琴效果,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2019-03-03详解关于Vue2.0路由开启keep-alive时需要注意的地方
这篇文章主要介绍了关于Vue2.0路由开启keep-alive时需要注意的地方,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧2018-09-09vue学习笔记之指令v-text && v-html && v-bind详解
这篇文章主要介绍了vue学习笔记之指令v-text && v-html && v-bind详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧2017-05-05Vuex unknown action type报错问题及解决
这篇文章主要介绍了Vuex unknown action type报错问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2023-02-02
最新评论