cancas画一个柱状图

先生成一个画布
html中

<canvas id="myCanvas" width="1000px" height="800px" style="border: 1px solid black;"></canvas>

在js中写好数据

 var c = document.getElementById("myCanvas");
    var ctx = c.getContext("2d");
    data1 = {
        x: ['一月', '二月', '三月', '四月', '五月', '六月',"七月","八月","九月","十月","十一月","十二月" ],
        y: [0, 100, 200, 300, 400, 500, 600, 700, 800, 900,1000 ],
        val: [100, 300, 200, 400, 800, 660,520,134,666,888,120,713],
        col: ["red", "green", "blue", "skyblue", "limegreen", "pink", "black","gray","#f20","#ccc","#f99","#666"]
    }
    ctx.translate(80, 700)
    ctx.beginPath();
    ctx.moveTo(0, 0)
    ctx.lineTo(800, 0)
    ctx.stroke()

    ctx.beginPath();
    ctx.moveTo(0, 0)
    ctx.lineTo(0, -600)
    ctx.stroke()
    ctx.textAlign ="center"
    ctx.textBaseline="middle"
    for (var j in data1.y) {
        ctx.beginPath();
        ctx.fillText(data1.y[j], -30, -j * 50)
        ctx.moveTo(0, -j * 50)
        ctx.lineTo(-10, -j * 50)
        ctx.stroke()
    }

    for (var i = 0; i < data1.val.length; i++) {
        ctx.beginPath();
        ctx.moveTo((i + 1 ) * 60, 0)
        ctx.lineTo((i + 1) * 60, -data1.val[i] / 2);
        ctx.lineWidth = 40
        ctx.strokeStyle = data1.col[i]
        ctx.stroke();
        ctx.closePath();
        ctx.fillText(data1.x[i],(i+1)*60,10)
        ctx.fillText(data1.val[i],(i+1)*60,-data1.val[i] / 2-10)
    }

先画一横一竖两根轴线,并把它们位移到想要的位置,然后循环数据,画数据中那么多线,并把线的宽度设大,让它便于我们看,循环数据把颜色写入,再把轴线上的字写入。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • HTML 5 HTML5概述 因特网上的信息是以网页的形式展示给用户的,因此网页是网络信息传递的载体。网页文件是用...
    阿啊阿吖丁阅读 10,072评论 0 0
  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 13,893评论 1 32
  • 前述:Python程序设计可以利用多种方法实现对图像和图像的呈现和处理,在这是利用Python3.x自带的tkin...
    IIronMan阅读 13,093评论 0 8
  • “各位旅客你们好,我是升月号空间邮轮的船长况天赋,我代表全体船员以及演职人员向各位的到来表示热烈欢迎。飞船将在一分...
    况天赋声阅读 1,612评论 2 1
  • 为了找到书写临帖的新鲜感,不至于越写越难受,就故意翻了翻清代及近人的法帖,涉及了整套“历代书法大家系列”所包含的书...
    三栖野鹤阅读 3,961评论 8 23

友情链接更多精彩内容