echarts 小程序使用

項目是原生小程序,現(xiàn)在要用圖表類的展示數(shù)據(jù)荐糜。
思考問題:
1.自己寫肯定不行,canvas花半天得葛超,還有交互什么的暴氏,pass
2.echarts是大家都知道的,另外還有螞蟻出的antV绣张,有專門針對移動端的答渔。螞蟻的交互和色彩做的都很不錯,echarts的色彩搭搭配相對antv就有點不太好看了
echarts鏈接:https://echarts.apache.org/examples/zh/index.html
antv鏈接:https://antv.vision/zh
3.我最后是用了echarts胖替,沒用antv研儒。因為antv暫時不支持餅圖的指示線
4.小程序引用echarts有2種

小程序插件:

      小程序開發(fā)者可在”小程序管理后臺-設置-第三方服務-插件管理“中,根據(jù)AppID查找需要的插件独令,并申請使用端朵。插件開發(fā)者在24小時內(nèi)通過后,小程序開發(fā)者可在小程序內(nèi)使用該插件燃箭。
      在app.json添加
"plugins": {
   "echarts": {
     "version": "2.1.1",
     "provider": "wx1db9e5ab1149ea03"
   }
 }

echarts組件包:https://github.com/ecomfe/echarts-for-weixin

5.我最終選擇了插件冲呢,原因:插件和組件包都會占用小程序的大小,插件相對來說引用方便招狸,插件會自動更新敬拓。組件包會隨著git版本的提交,要維護組件包裙戏,有點麻煩乘凸。
6.插件使用方法:
app.json引入插件

"plugins": {
    "echarts": {
      "version": "2.1.1",
      "provider": "wx1db9e5ab1149ea03"
    }
  }

使用圖表的頁面的index.json文件引入該插件,我用的是echarts插件全部的版本累榜,按需引入的暫時沒搞懂营勤,搞懂后更新文章

{
  "usingComponents": {
    "chart": "plugin://echarts/chart"
  }
}

index.wxml中加入代碼,記得給圖表添加寬高壹罚,不然顯示不出來

<chart chart-class="chart" style="heigth: 500rpx" option="{{ channelOption }}" />

7.我用到的圖表類型有:環(huán)形圖葛作,餅圖,分組柱狀圖

環(huán)形圖的options:

const total = 600
    const lala = '50%'
     // 資產(chǎn)管理
    const assetsOption = {
      title: {
        zlevel: 0,
        text: [
          '{value|' + total + '臺}',
          '{name|已投放}'
        ].join('\n'),
        top: 'center',
        left: '48.5%',
        textAlign: 'center',
        textStyle: {
          rich: {
            value: {
              color: '#474747',
              fontSize: 16,
              fontWeight: 'bold',
              // lineHeight: 40,
            },
            name: {
                color: '#666666',
                fontSize: 14,
                lineHeight: 20
            },
          },
          color: '#696969'
        },
        subtext: `{value|巡檢率${lala}}`,
        subtextStyle: {
          rich: {
            value: {
              color: '#666666',
              fontSize: 12,
              backgroundColor: 'rgba(255,255,255,0.6)',
              width: 85,
              height: 30, 
              borderRadius: 5,
            }
          }
        }
      },
      tooltip: {
        trigger: 'item'
      },
      // legend: {  
      //   // top: '0%',
      //   left: 'center'
      // },
      color:['#13c2c2', '#5a8ef7'], // 指定環(huán)的顏色
      series: [
        {
          // name: 'Access From',
          type: 'pie',
          left: 'center',
          radius: ['35%', '70%'], // 內(nèi)半徑猖凛,外半徑
          itemStyle:{ 
            normal:{ 
              label:{ 
                show: true, 
                formatter: '赂蠢:{c}臺' 
              }, 
              labelLine :{show:true} 
            } 
          },
          avoidLabelOverlap: false,
          label: {
            show: true,
            position: 'outside'
          },
          emphasis: {
            label: {
              show: true,
              fontSize: '12',
              fontWeight: 'bold'
            }
          },
          labelLine: {
            show: true
          },
          showEmptyCircle: true,
          data: [
            { value: 200, name: '已巡檢' },
            { value: 400, name: '未巡檢' },
          ]
        }
      ]
    }
image.png

餅圖options:

const channelOption = {
      title: {
        // text: 'Referer of a Website',
        // subtext: 'Fake Data',
        left: 'center',
        textStyle: {
          color: '#999',
          fontWeight: 'normal',
          fontSize: 14
        }
      },
      tooltip: {
        trigger: 'item'
      },
      legend: {
        orient: 'horizontal',
        // left: 'left'
      },
      series: [
        {
          // name: 'Access From',
          type: 'pie',
          radius: '50%',
          itemStyle: {
            borderColor: '#fff',
            borderWidth: 1
          },
          data: [
            {name: '測試1', value: 10},
            {name: '測試2'辨泳, value: 20}
          ],
          emphasis: {
            itemStyle: {
              shadowBlur: 10,
              shadowOffsetX: 0,
              shadowColor: 'rgba(0, 0, 0, 0.5)'
            }
          },
          label: {
            alignTo: 'edge', // 覺得指示線太長的看這里
            formatter: '{name|虱岂}\n{value|{c}}',
            minMargin: 5,
            edgeDistance: 10,
            lineHeight: 15,
            rich: {
              value: {
                fontSize: 10,
                color: '#999'
              }
            },
            position: 'outer'
          },
          labelLine: {
            normal: {
              // length: 100,
              // length2: 0,
              maxSurfaceAngle: 80,  // 指示線的彎曲程度玖院,一般設置0-90之間最為合適
              smooth: 0.5,  // 指示線的平滑程度,0-1之間第岖,數(shù)值越大越平滑
            }
          },
        }
      ]
    }
image.png

柱狀圖options:

const productOption = {
      legend: {},
      tooltip: {},
      dataset: {
        source: productData
      },
      dataZoom : [ // 移動端手機寬度有限司恳,添加橫向滑動
        {
          type: 'slider',
          show: true,
          start: 0,
          end: 30,
          xAxisIndex: [0],
        },
      ],
      xAxis: { 
        type: 'category',
        axisLabel:{
          interval: 0,
          rotate:40
        },
        data: xTitle
      },
      yAxis: {},
      // Declare several bar series, each will be mapped
      // to a column of dataset.source by default.
      series: [
        { 
          type: 'bar',
          barWidth: 10,
          itemStyle: {
            normal: {
              color: '#1890ff'
            }
          }
        }, 
        { 
          type: 'bar',
          barWidth: 10,
          itemStyle: {
            normal: {
              color: '#2fc25b'
            }
          }
        }
      ]
    }
image.png
最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市绍傲,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌耍共,老刑警劉巖烫饼,帶你破解...
    沈念sama閱讀 211,194評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異试读,居然都是意外死亡杠纵,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,058評論 2 385
  • 文/潘曉璐 我一進店門钩骇,熙熙樓的掌柜王于貴愁眉苦臉地迎上來比藻,“玉大人,你說我怎么就攤上這事倘屹∫祝” “怎么了?”我有些...
    開封第一講書人閱讀 156,780評論 0 346
  • 文/不壞的土叔 我叫張陵纽匙,是天一觀的道長务蝠。 經(jīng)常有香客問我,道長烛缔,這世上最難降的妖魔是什么馏段? 我笑而不...
    開封第一講書人閱讀 56,388評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮践瓷,結(jié)果婚禮上院喜,老公的妹妹穿的比我還像新娘。我一直安慰自己晕翠,他們只是感情好喷舀,可當我...
    茶點故事閱讀 65,430評論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著崖面,像睡著了一般元咙。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上巫员,一...
    開封第一講書人閱讀 49,764評論 1 290
  • 那天庶香,我揣著相機與錄音,去河邊找鬼简识。 笑死赶掖,一個胖子當著我的面吹牛感猛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播奢赂,決...
    沈念sama閱讀 38,907評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼陪白,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了膳灶?” 一聲冷哼從身側(cè)響起咱士,我...
    開封第一講書人閱讀 37,679評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎轧钓,沒想到半個月后序厉,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,122評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡毕箍,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,459評論 2 325
  • 正文 我和宋清朗相戀三年弛房,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片而柑。...
    茶點故事閱讀 38,605評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡文捶,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出媒咳,到底是詐尸還是另有隱情粹排,我是刑警寧澤,帶...
    沈念sama閱讀 34,270評論 4 329
  • 正文 年R本政府宣布伟葫,位于F島的核電站恨搓,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏筏养。R本人自食惡果不足惜斧抱,卻給世界環(huán)境...
    茶點故事閱讀 39,867評論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望渐溶。 院中可真熱鬧辉浦,春花似錦、人聲如沸茎辐。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,734評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽拖陆。三九已至弛槐,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間依啰,已是汗流浹背乎串。 一陣腳步聲響...
    開封第一講書人閱讀 31,961評論 1 265
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留速警,地道東北人叹誉。 一個月前我還...
    沈念sama閱讀 46,297評論 2 360
  • 正文 我出身青樓鸯两,卻偏偏與公主長得像,于是被迫代替她去往敵國和親长豁。 傳聞我的和親對象是個殘疾皇子钧唐,可洞房花燭夜當晚...
    茶點故事閱讀 43,472評論 2 348