reactjs+echarts实现绘图

最近手头需要实现reactjs下echarts的绘图,发现不少坑,现整理如下。
首先贴好代码如下,注意其中数据传递

        var Hello = React.createClass({
         componentDidMount:function(){
           console.log(this.props.data);
           this.drawCharts(this.props.data);
         },
         drawCharts:function(dataSet){
         var myChart = echarts.init(document.getElementById('charts'));

           // 指定图表的配置项和数据
           var option = {
             title: {
               text: 'ECharts 入门示例'
             },
             tooltip: {},
             legend: {
               data:['销量']
             },
             xAxis: {
               data: ["衬衫","羊毛衫","雪纺衫","裤子","高跟鞋","袜子"]
             },
             yAxis: {},
             series: [{
               name: '销量',
               type: 'bar',
               data: dataSet
             }]
           };
           // 使用刚指定的配置项和数据显示图表
           myChart.setOption(option);
         },
         /*注意return后面的js有自动加;的习惯*/
         render: function() {
           return <div>
              <h1>Hello {this.props.name}</h1>
              <div id="charts" data={dataSet}></div>
           </div>;
         }
       });
        /*props向组件内部传递*/
       var dataSet=[100,20,30,0,0,0];
       ReactDOM.render(
       <Hello name="World"data={dataSet}/>,
         document.getElementById('example')
       );

同时,注意echarts要求给定对应的标签的长宽,否则报错init Dom failed:

    <style>
      #charts{
        width:500px;
        height:500px;
      }
    </style>
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值