iChart JS画自定义图表

//Deploy data
function showArea2D(element,title,subtitle,foottext,labels,data){
    var data = [
        {
            name : 'Deploy',
            value:[1,3,1,3,3,3,1,1,3,1,3,1],
            color:'#1f7e92',
            line_width:0
        }
    ];
    var chart = new iChart.LineBasic2D({
        render : element,
        data: data,
        title : 'Deploy Data',
        width : screen.width*25/84,
        height : screen.height*34/63,

        coordinate:{
            height:'90%',
            scale:[
                {
                    position:'left',
                    scale_enable : false,

                    start_scale:0,
                    scale_space:1,
                    end_scale:4,
                    text_space:500
                },
                {
                    position:'bottom',
                    label : {color:'#9d987a',font : 'Times New Roman',fontsize:11,fontweight:600},
                    scale_enable : false,
                    labels:labels
                }
            ],
            background_color:'#f6f9fa'
        },

        sub_option:{
            hollow_inside:false,
            point_size:10,
            label:false
        },

        labels:["Jan","Feb","Mar","Apr","May","June","July","Aug","Sep","Oct","Nov","Dec"]
    });



    //Custom plugin, show success and failure.
    chart.plugin(new iChart.Custom({
        drawFn:function(){
            //Position
            var coo = chart.getCoordinate(),
                x = coo.get('originx'),
                y = coo.get('originy'),
                w = coo.width,
                h = coo.height;
            //Render the text
            chart.target.textAlign('start')
                .textBaseline('bottom')
                .textFont('600 11px Times New Roman')
                .fillText('Success',x-50,y+h/4+5,false,'#3e576f')
                .textBaseline('top')
                .fillText('Failure',x-50,y+3*h/4-5,false,'#3e576f');
            console.log(x, y, w, h);
        }
    }));

    //Success line
    chart.plugin(new iChart.Custom({
        drawFn:function(){
            var avg = chart.total/5,
                coo = chart.getCoordinate(),
                x = coo.get('originx'),
                W = coo.width,
                S = coo.getScale('left'),
                H = coo.height,
                h = (avg - S.start) * H / S.distance,
                y = chart.y + H/4 ;
            console.log("two:"+y);
            chart.target.line(x,y,x+W,y,2,'#009a58')
                .textAlign('start')
                .textBaseline('middle')
                .textFont('600 12px Verdana')
                .fillText('',x+W+5,y,false,'#b32c0d');
        }
    }));

    //Failure line
    chart.plugin(new iChart.Custom({
        drawFn:function(){
            var avg = chart.total/5,
                coo = chart.getCoordinate(),
                x = coo.get('originx'),
                W = coo.width,
                S = coo.getScale('left'),
                H = coo.height,
                h = (avg - S.start) * H / S.distance,
                y = chart.y + 3*H/4 ;
            console.log("two:"+y);
            chart.target.line(x,y,x+W,y,2,'#b32c0d')
                .textAlign('start')
                .textBaseline('middle')
                .textFont('600 12px Verdana')
                .fillText('',x+W+5,y,false,'#b32c0d');
        }
    }));
    chart.draw();
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ithouse

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值