echarts怎么实现堆积柱状图,数据来源数据库

ququ0505 2014-07-28 11:47:22
需求是这样的:
横轴为最活跃的五个工程名称,纵轴为该工程中使用所有工具的堆积
鼠标放上去tips显示该工具的名字以及该工具本月使用人次
...全文
6658 3 打赏 收藏 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
ququ0505 2014-07-28
  • 打赏
  • 举报
回复
谢谢楼上两位,: 需求是这样的: 横轴为最活跃的五个工程名称,纵轴为该工程中使用所有工具的堆积 鼠标放上去tips显示该工具的名字以及该工具本月使用人次 不过现在有个问题是这样的,横轴数据容易传入,但是纵轴没有好的办法解决。每个柱子对应一个工程名称,由几个堆积层次构成是由该工程对应的工具数量决定。 例如最活跃的第一个工程A,他里面用到了工具a,b,c那么第一个柱子的纵轴就是如下,但是每个工程使用的工具不同(从数据库查询),所以每个柱子就不确定是由几个堆积层构成。那么series 里面怎么写呢? { name:'工具a', type:'bar', stack: '工程A', data:[320, 302, 301, 334, 390, 330, 320] }, { name:'工具b', type:'bar', stack: '工程A', data:[320, 302, 301, 334, 390, 330, 320] }, { name:'工具c', type:'bar', stack: '工程A', data:[320, 302, 301, 334, 390, 330, 320] }
弘毅致远 2014-07-28
  • 打赏
  • 举报
回复
option = {
    tooltip : {
        trigger: 'axis',
        axisPointer : {            // 坐标轴指示器,坐标轴触发有效
            type : 'shadow'        // 默认为直线,可选为:'line' | 'shadow'
        }
    },
    legend: {
        data:['直接访问', '邮件营销','联盟广告','视频广告','搜索引擎']
    },
    toolbox: {
        show : true,
        feature : {
            mark : {show: true},
            dataView : {show: true, readOnly: false},
            magicType : {show: true, type: ['line', 'bar', 'stack', 'tiled']},
            restore : {show: true},
            saveAsImage : {show: true}
        }
    },
    calculable : true,
    xAxis : [
        {
            type : 'value'
        }
    ],
    yAxis : [
        {
            type : 'category',
            data : ['周一','周二','周三','周四','周五','周六','周日']
        }
    ],
    series : [
        {
            name:'直接访问',
            type:'bar',
            stack: '总量',
            itemStyle : { normal: {label : {show: true, position: 'insideRight'}}},
            data:[320, 302, 301, 334, 390, 330, 320]
        },
        {
            name:'邮件营销',
            type:'bar',
            stack: '总量',
            itemStyle : { normal: {label : {show: true, position: 'insideRight'}}},
            data:[120, 132, 101, 134, 90, 230, 210]
        },
        {
            name:'联盟广告',
            type:'bar',
            stack: '总量',
            itemStyle : { normal: {label : {show: true, position: 'insideRight'}}},
            data:[220, 182, 191, 234, 290, 330, 310]
        },
        {
            name:'视频广告',
            type:'bar',
            stack: '总量',
            itemStyle : { normal: {label : {show: true, position: 'insideRight'}}},
            data:[150, 212, 201, 154, 190, 330, 410]
        },
        {
            name:'搜索引擎',
            type:'bar',
            stack: '总量',
            itemStyle : { normal: {label : {show: true, position: 'insideRight'}}},
            data:[820, 832, 901, 934, 1290, 1330, 1320]
        }
    ]
};
参考json格式,设定成约定格式的数据,绑上去就可以了。
qcxl 2014-07-28
  • 打赏
  • 举报
回复
参考echarts里面类似的demohttp://echarts.baidu.com/doc/example/bar4.html

87,984

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧