当前位置:   article > 正文

数据可视化高级技术Echarts(快速上手&柱状图&进阶操作)

数据可视化高级技术Echarts(快速上手&柱状图&进阶操作)

目录

1.Echarts的配置

 2.程序的编码

3.柱状图的实现(入门实现)

相关属性介绍(进阶):

1.标记最大值/最小值

2.标记平均值

3.柱的宽度

4. 横向柱状图

5.colorBy

series系列(需要构造多组数据才能实现,下面有Sale和Sale1两组数据)

data系列(同一组数据每个柱状图不同的显示)

6.showBackground

7.label

8.title  标题属性及相关设置

9.tooltip  鼠标经过时,出现提示框

10.toolbox  工具按钮(下载、复原什么的操作按钮)

11.legend  图例


1.Echarts的配置

        在  src  下新建目录JS,将echarts.js放入其中(这个是Eclipse的截图,其他开发IDE只需要引入echarts.js即可)

注意:Eclipse需要创建Dynamic Web Project才能运行

 2.程序的编码

        回顾五个基本步骤(通过简单的5个步骤, 就能够把一个简单的图表显示在网页中了。这几个步骤中, 步骤4最重要,一个图表最终呈现什么样,完全取决于这个配置项。所以对于不同的图表, 除了配置项会发生改变之外,其他的代码都是固定不变的。

1.导入ECharts插件

<script type="text/javascript">

2.为ECharts准备一个DOM容器

<div id="main" style="width: 600px;height: 400px;"></div>

3.基于准备好的DOM,初始化echarts实例

var myChart=echarts.init(document.getElementById('main'));

4. 指定图表的配置项和数据(对ECharts进行一些配置)

var option={ }

5.将配置和参数传递给ECharts,显示图表

myChart.setOption(option);

3.柱状图的实现(入门实现)

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Insert title here</title>
  6. <script src="JS/echarts.js"></script>
  7. </head>
  8. <body>
  9. <div id='main' style="width:600px;height:400px"></div>
  10. <script>
  11. var chartDom = document.getElementById('main');
  12. var myChart = echarts.init(chartDom);
  13. var option;
  14. option = {
  15. /* 设置x轴数据 */
  16. xAxis:{
  17. data:["冰箱","电视","洗衣机","手机","微波炉"]
  18. },
  19. /* 设置x轴数据 */
  20. yAxis:{
  21. },
  22. /* 填写series序列的类型 */
  23. series:{
  24. type:'bar', /* 设置图标类型 */
  25. data:[200,128,150,340,178] /* 插入数据 */
  26. },
  27. /* 设置提示框 */
  28. tooltip:{
  29. },
  30. /* 添加标题 */
  31. title:{
  32. text:'电器销售图' /* 设置文本内容 */
  33. }
  34. };
  35. myChart.setOption(option);
  36. </script>
  37. </body>
  38. </html>

相关属性介绍(进阶):

1.标记最大值/最小值

2.标记平均值

3.柱的宽度

4. 横向柱状图

5.colorBy

从调色盘 option.color 中取色的策略,可取值为:

  • 'series':按照系列分配调色盘中的颜色,同一系列中的所有数据都是用相同的颜色;
  • 'data':按照数据项分配调色盘中的颜色,每个数据项都使用不同的颜色。
series系列(需要构造多组数据才能实现,下面有Sale和Sale1两组数据)
  1. option = {
  2. tooltip: {},
  3. legend: {},
  4. xAxis: {
  5. data: ["Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"]
  6. },
  7. yAxis: {},
  8. series: [{
  9. name: "Sale",
  10. type: "bar",
  11. data: [5, 20, 36, 10, 10, 20, 4],
  12. colorBy: "series"
  13. },
  14. {
  15. name: "Sale1",
  16. type: "bar",
  17. data: [3, 25, 76, 18, 14, 4, 10],
  18. colorBy: "series"
  19. }
  20. ]
  21. }

data系列(同一组数据每个柱状图不同的显示)
  1. option = {
  2. tooltip: {},
  3. legend: {},
  4. xAxis: {
  5. data: ["Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"]
  6. },
  7. yAxis: {},
  8. series: [{
  9. name: "Sale",
  10. type: "bar",
  11. data: [5, 20, 36, 10, 10, 20, 4],
  12. colorBy: "data"
  13. }
  14. ]
  15. }

6.showBackground
  • 是否显示柱条的背景色。通过 backgroundStyle 配置背景样式。
  • 每一个柱条的背景样式。需要将 showBackground 设置为 true 时才有效。

注意:两个参数需要同时使用才能生效

  1. option = {
  2. xAxis: {
  3. type: 'category',
  4. data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
  5. },
  6. yAxis: {
  7. type: 'value'
  8. },
  9. series: [
  10. {
  11. data: [120, 200, 150, 80, 70, 110, 130],
  12. type: 'bar',
  13. showBackground: true,
  14. backgroundStyle: {
  15. color: 'rgba(180, 180, 180, 0.2)'
  16. }
  17. }
  18. ]
  19. };

7.label

图形上的文本标签,可用于说明图形的一些数据信息,比如值,名称等。

  • show:是否显示标签
  • distance:距离图形元素的距离
  • rotate:旋转标签。从-90°到90°。正值是逆时针。
  • offset:文字偏移量。默认不偏移。例如:[30, 40] 表示文字在横向上偏移 30,纵向上偏移 40
  1. option = {
  2. tooltip: {},
  3. legend: {},
  4. xAxis: {
  5. data: ["Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"]
  6. },
  7. yAxis: {},
  8. series: [{
  9. name: "Sale",
  10. type: "bar",
  11. data: [5, 20, 36, 10, 10, 20, 4],
  12. colorBy: "series",
  13. legendHoverLink: true,
  14. label: {
  15. show: true,
  16. distance: 5,
  17. rotate: 50,
  18. offset: [5, 8]
  19. }
  20. }]
  21. }

8.title  标题属性及相关设置
  • text:设置文章(主)标题
  • subtext:设置文章(副)标题
  • left:设置标题的 --水平-- 位置(可以为 'left','center','right',或者指定为数值)
  • top:设置标题 --垂直-- 位置(可以为 'up','center','down',或者指定为数值)
  • textStyle:设置(主)标题的颜色
  • borderWidth:设置标题边框宽度(厚度)
  • borderColor:设置标题边框颜色
  • boderRadius:设置标题边框圆角
  1. option = {
  2. tooltip: {},
  3. legend: {},
  4. xAxis: {
  5. data: ["Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"]
  6. },
  7. yAxis: {},
  8. series: [{
  9. name: "Sale",
  10. type: "bar",
  11. data: [5, 20, 36, 10, 10, 20, 4]
  12. }],
  13. title:{
  14. text:'柱状图的标题',
  15. subtext:'这个是副标题(注意观察位置)',
  16. textStyle:{
  17. color:'green'
  18. },
  19. borderWidth:2,
  20. borderColor:'blue',
  21. borderRadius:5,
  22. // left:'right',
  23. left:180,
  24. top:10
  25. }
  26. }

9.tooltip  鼠标经过时,出现提示框
  • trigger:设置触发类型(分为 item 和 axis )
  • triggerOn:设置触发时机(分为 mousemove 和 click )
  • formatter:设置格式化显示,即显示的标签格式(字符串模板,eg:{b}:{c} )
  • axisPointer:设置触发显示为阴影(trigger为  axis 时生效) -->  下面图二
  1. {
  2. tooltip: {
  3. trigger:'axis',
  4. triggerOn:'mousemove',
  5. // triggerOn:'click',
  6. formatter:'{b}:{c}',
  7. axisPointer:{
  8. type:'shadow'
  9. }
  10. },
  11. legend: {},
  12. xAxis: {
  13. data: ["Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"]
  14. },
  15. yAxis: {},
  16. series: [{
  17. name: "Sale",
  18. type: "bar",
  19. data: [5, 20, 36, 10, 10, 20, 4]
  20. }],
  21. }

此时设置鼠标经过显示(mousemove)且axisPointer未生效(注释掉)

此时设置鼠标点击(click)且axisPointer生效

不想设置的话,建议加一个空白的tooltip,会自动给你有一些默认显示

 

10.toolbox  工具按钮(下载、复原什么的操作按钮)

只有五个工具:

  • 保存图片:savaAsImage
  • 数据视图:dataView(显示原始数据)
  • 重置还原:restore
  • 数据区域缩放:dataZoom
  • 动态类型切换:magicType(需要设置类型)
  1. option = {
  2. tooltip: {
  3. },
  4. legend: {},
  5. xAxis: {
  6. data: ["Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"]
  7. },
  8. yAxis: {},
  9. series: [{
  10. name: "Sale",
  11. type: "bar",
  12. data: [5, 20, 36, 10, 10, 20, 4]
  13. }],
  14. toolbox:{
  15. feature:{
  16. saveAsImage:{
  17. },
  18. dataView:{
  19. },
  20. restore:{
  21. },
  22. dataZoom:{
  23. },
  24. magicType:{
  25. type:['bar','line']
  26. }
  27. }
  28. }
  29. }

11.legend  图例

        图例需要和数据组对应,才能正确显示(设置name)

  • left:设置到左边的距离(可以是数值,或者百分比)
  • top:设置到上边的距离(可以是数值,或者百分比)
  • orient:设置图例的排列方向  horizontal(水平,默认) ,vertical(垂直)
  1. option = {
  2. tooltip: {
  3. },
  4. legend: {
  5. left:200,
  6. top:50,
  7. orient:'vertical'
  8. },
  9. xAxis: {
  10. data: ["Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"]
  11. },
  12. yAxis: {},
  13. series: [{
  14. name: "Sale",
  15. type: "bar",
  16. data: [5, 20, 36, 10, 10, 20, 4]
  17. },
  18. {
  19. name: "Sale1",
  20. type: "bar",
  21. data: [5, 20, 36, 10, 10, 20, 4]
  22. }
  23. ]
  24. }

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/353795
推荐阅读
相关标签
  

闽ICP备14008679号