当前位置: 首页 > news >正文

企业制作网站服务wordpress 扩展

企业制作网站服务,wordpress 扩展,重庆城乡建设信息网,怎么制作软件app流程前言 在我们公司的组件库中有许多echarts图表相关的组件,这些组件在使用时,只需将图表数据以特定的格式传入组件中,十分方便。因此当我得知echarts 可以使用dataset集中管理数据时,我就决定自己一定要搞懂它,于是在最…

前言

在我们公司的组件库中有许多echarts图表相关的组件,这些组件在使用时,只需将图表数据以特定的格式传入组件中,十分方便。因此当我得知echarts 可以使用dataset集中管理数据时,我就决定自己一定要搞懂它,于是在最近的开发工作中我便使用dataset来绘制图表。本文就将介绍我在使用后对dataset的理解。关于echarts数据集的更多用法,推荐参考官方的使用手册。

1.给数据集设置数据

dataset.source中设置数据,数据可以设置为三种形式:

这样就十分方便,不用我们再去进行复杂的数据处理,请求到的数据可以可以直接放到数据集中使用。

但是这样就有一个新的问题:数据集怎么用?

2.维度的概念

数据集的用法无非就是将二维表中的某一行或某一列的数据提供给系列(轴线)使用,提供数据的行(列)就被叫做维度。

如果二维表中的每一行映射一个系列,那么此时每一行就被称为“维度”,每一列则被称为“数据项”;

反之,如果让每一列映射一个系列,那么此时每一列就把称为“维度”,而每一行则被称为“数据项”。

可以给维度设置"维度名称",在默认情况下二维表的第一列或第一行就是维度名称

在折线图中使用数据集中的数据

(1)默认映射规则

这里我举一个例子,我有如下的一个折线图。

{//...xAxis: {type: "category",boundaryGap: false,data: ["Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"],axisLine: {},},yAxis: [{type: "value",name: "水位(m)",axisLine: {show: true,},axisLabel: {inside: true,},},{type: "value",name: "流量(m³/s)",axisLine: {show: true,},axisLabel: {inside: true,},},],series: [{name: "xxx水位",type: "line",yAxisIndex: 0,data: [120, 132, 101, 134, 90, 230, 210],},{name: "xxx流量",type: "line",yAxisIndex: 1,data: [220, 182, 191, 234, 290, 330, 310],},{name: "yyy流量",type: "line",yAxisIndex: 1,data: [150, 232, 201, 154, 190, 330, 410],},{name: "yyy水位",type: "line",yAxisIndex: 0,data: [320, 332, 301, 334, 390, 330, 320],},],
}

现在我将这两部分的数据以二维数组的形式放到dataset中,效果如下:

{dataset: {source: [["property", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"],["xxx水位", 120, 132, 101, 134, 90, 230, 210],["xxx流量", 220, 182, 191, 234, 290, 330, 310],["yyy流量", 150, 232, 201, 154, 190, 330, 410],["yyy水位", 320, 332, 301, 334, 390, 330, 320],],},tooltip: {trigger: "axis",},legend: {},toolbox: {feature: {saveAsImage: {},},},xAxis: {type: "category",boundaryGap: false,axisLine: {},},yAxis: [{type: "value",name: "水位(m)",axisLine: {show: true,},axisLabel: {inside: true,},},{type: "value",name: "流量(m³/s)",axisLine: {show: true,},axisLabel: {inside: true,},},],series: [{type: "line",yAxisIndex: 0,},{type: "line",yAxisIndex: 1,},{type: "line",yAxisIndex: 1,},{type: "line",yAxisIndex: 0,},],
}

对比前后的渲染效果可以得到以下结论:

  1. 二维表的首列被作为了x轴的数据
  2. 二维表的其它列被作为了系列的数据(每一行对应一个系列)
  3. 二维表的第一行是维度名称

以上的结论其实就是在折线图中数据集的默认映射规则。

现在数据集的映射规则是不符合我们的要求的,我们需要考虑如何修改映射规则。

(2)自定义映射规则

自定义折线图系列的映射规则主要用到series-line.seriesLayoutByseries-line.encode这两配置项

seriesLayoutBy用来设置系列使用行(还是列)作为维度

{dataset: {source: [["property", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"],["xxx水位", 120, 132, 101, 134, 90, 230, 210],["xxx流量", 220, 182, 191, 234, 290, 330, 310],["yyy流量", 150, 232, 201, 154, 190, 330, 410],["yyy水位", 320, 332, 301, 334, 390, 330, 320],],},title: [{text: "以列为维度",left: "10%",textStyle:{color: 'red'}},{text: "以行为维度",left: "10%",top: "48%",textStyle:{color: 'red'}},],tooltip: {trigger: "axis",},legend: {},toolbox: {feature: {saveAsImage: {},},},grid: [{ bottom: "55%" }, { top: "55%" }],xAxis: [{type: "category",gridIndex: 0,},{type: "category",gridIndex: 1,},],yAxis: [{type: "value",name: "水位(m)",axisLine: {show: true,},axisLabel: {inside: true,},gridIndex: 0,},{type: "value",name: "流量(m³/s)",axisLine: {show: true,},axisLabel: {inside: true,},gridIndex: 0,},{type: "value",name: "水位(m)",axisLine: {show: true,},axisLabel: {inside: true,},gridIndex: 1,},{type: "value",name: "流量(m³/s)",axisLine: {show: true,},axisLabel: {inside: true,},gridIndex: 1,},],series: [// 默认映射规则:以列为维度{type: "line",yAxisIndex: 0,},{type: "line",yAxisIndex: 1,},{type: "line",yAxisIndex: 1,},{type: "line",yAxisIndex: 0,},// 新的映射规则:以行为维度{type: "line",xAxisIndex: 1,yAxisIndex: 2,seriesLayoutBy: "row",},{type: "line",xAxisIndex: 1,yAxisIndex: 3,seriesLayoutBy: "row",},{type: "line",xAxisIndex: 1,yAxisIndex: 3,seriesLayoutBy: "row",},{type: "line",xAxisIndex: 1,yAxisIndex: 2,seriesLayoutBy: "row",},],
}

encode则指定了系列如何使用维度。encode是一个对象,其中可以设置许多属性,但对于折线图来说最重要的是encode.yencode.x,前者表示当前的折线将哪个维度的数据映射到y轴,后者表示当前折线将哪个维度的数据映射到x轴。

  dataset: {source: [["property", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"],["xxx水位", 120, 132, 101, 134, 90, 230, 210],["xxx流量", 220, 182, 191, 234, 290, 330, 310],["yyy流量", 150, 232, 201, 154, 190, 330, 410],["yyy水位", 320, 332, 301, 334, 390, 330, 320],],},series: [{type: "line",yAxisIndex: 0,seriesLayoutBy: "row",encode: {//将"维度 4" (第5行数据) 的维度名作为系列名seriesName: 4,// 将"维度 0" (第1行数据) 映射到x轴x:0,// 将"维度 4" (第5行数据) 映射到y轴y: 4,},},{type: "line",yAxisIndex: 1,seriesLayoutBy: "row",encode: { //将"维度 xxx流量" 的维度名作为系列名seriesName: "xxx流量", // 将"维度 1" (第2行数据) 映射到x轴x:1,//将"维度 xxx流量"的数据映射到y轴y: "xxx流量"},},],

参考资料

  1. Documentation - Apache ECharts
http://www.yayakq.cn/news/39246/

相关文章:

  • 浙江省住房与城乡建设部网站网页美工设计中使用的主要软件是
  • 陕西建设厅继续教育网站南京市建筑工程网站
  • 做一个网站需要投入多少钱彬县网招聘
  • 廊坊购物网站开发设计品牌创意网站
  • 全屏企业网站成都住建局官网查询入口
  • 青岛公路建设集团网站个人博客网站建设选题说明
  • 之梦网站怎么做seowordpress做管理网站
  • 微信手机网站app制作百度seo外包
  • 深圳市科技网站开发中国建筑设计咨询有限公司
  • 淮北矿业工程建设有限公司网站网站模板间距
  • 网站转换小程序广告视频网站
  • 公司网站seo公司青岛网上房地产官网查网签
  • wordpress中如何设置文章在新窗口打开 (商城网站 没有什么文章 怎样优化
  • 做网站客户没有付定金惠州网红
  • discuz网站建设专业长春网站建设哪家好
  • 旅游网站流程图西双版纳傣族自治州有几个县
  • 做网站怎么赚钱吗汉口网站建设制作
  • 经常做飞机网站百度网盘下载电脑版官方下载
  • 自建站平台站长之家产品介绍
  • 网站搭建网站设置安装wordpress it works
  • 怎么做一淘宝客网站个人网页设计与实现ppt
  • 代理浏览网站杭州做网站小程序公司
  • 广州安全教育平台官网登录网站图标的制作h1优化代码
  • 北仑静态网站建设网站建设佰金手指科杰十三
  • 商城网站建设fwshop手机制作软件下载
  • 免费微网站有哪些做网站如何收费
  • 大连市住房和建设局网站网站设计与建设考试
  • 如何禁止通过ip访问网站江西建设厅网站证书查询
  • 网站外链建设可以提升网站权重吗网站流量统计主要指标包括
  • 均安建网站网站备案百度站长提交