Echarts(一)一组不同颜色的柱状图

18 篇文章 0 订阅
10 篇文章 0 订阅

1

    $(function () {       

        //加载日历列表数据

        AirReport();

        //加载图表数据

        bindChart();

    });

2

 var dateData = [];

    var dataAQI = [];

    //绑定图表

    function bindChart() {

        $.ajax({

            type: "POST",

            url:"GetCityChart",

            data:{start:"@ViewBag.start",end:"@ViewBag.end"},

            dataType:"json",

            success: function (result) {

                console.info(result);

 

                if (result.length > 0)//遍历数据

                {

                    dateData.splice(0, dateData.length);

                    dataAQI.splice(0, dataAQI.length);

                    for (i = 0; i < result.length ; i++)

                    {

                        var tempDate = new Date(result[i].MONIDATE);

                        tempDate.setMinutes(0);

                        var dateString = tempDate.Format( 'yyyy-MM-dd')

                        dateData.push(dateString);  //日期

                        dataAQI.push(result[i].AQI); //AQI

                    }

                }

                Show_AQI();

            }

        });

}

3】

function Show_AQI() {        

        var unit = "";

        myChart = echarts.init(document.getElementById("main"));

        myChart.showLoading({

            text: '正在努力的读取数据中...',

            effect: 'bubble'

        });

        var option = {

            color: lineColor,

            title: {

                text: "银川市",

                x: 'center',

                padding: [0, 0, 0, 0]

            },

            grid: {

                z: 99,

                top: 80 ,

                left: 80,

                width: 1000,

            },

            tooltip: {

                trigger: 'axis',

                backgroundColor: 'white',

                borderColor: '#87CEEB',

                borderWidth: 2,

                textStyle: {

                    fontFamily: 'Lucida Grande',

                    color: 'black',

                    fontSize: 12

                },

                formatter: function (obj) {

                    var tip = "<table width='150px' style='font-size:12px'>";

                    tip += "<tr><td colspan=2>" + '时间:' + obj[0].name + "</td></tr>";

                    tip += "<tr><td colspan='2'><hr/></td></tr>";

                    for (var i = 0; i < obj.length; i++) {

                        //tip += "<tr><td>" + obj[i].seriesName + "</td><td align='right'><font color='" + GetAQIColor(obj[i].value) + "'><b>" + obj[i].value + "</b></font></td></tr>";

                        tip += "<tr><td style='color:" + obj[i].color + "'>" + obj[i].seriesName + "</td><td align='right'><font color='" + GetAQIColor(obj[i].value) + "'><b>" + obj[i].value + "</b></font></td></tr>";

 

                        tip += "</table>";

                        return tip;

                    }

                },

            },

            legend: {

                padding: [40, 20, 15, 100],

                data: "AQI"

            },

            toolbox: {

                show: true,

                feature: {

                    dataView: { show: false, readOnly: false },

                    restore: { show: false },

                    saveAsImage: { show: true }

                }

            },

            xAxis: [

                  {

                      type: 'category',

                      data: dateData,

                  }

            ],

            yAxis: [

                   {

                       type: 'value',

                       name: (unit != "") ? ("单位:" + unit) : '',

                       position: 'left'

                   }

            ],

 

            series:

                [{

                name: 'AQI',

                type: 'bar',

                data:echartsColor(dataAQI)

            }]

 

        }

        myChart.setOption(option);//adaptZoom(option)

        myChart.hideLoading();

    }

4】

    ///柱状图AQI柱子颜色

    function echartsColor(result)

    {

        var json=[];

        for(var i=0;i<result.length;i++)

        {

            json.push({

                value: (result[i] || 0),

                itemStyle: {

                    normal: {

                        color: GetAQIColor(result[i] || 0)

                    }

                }

            });

        }

        return json;

    }

5

/*根据AQI获取级别对应的颜色*/
function GetAQIColor(aqi) {
    if (aqi >= 0 && aqi <= 50)
        return level1color;
    else if (aqi >= 51 && aqi <= 100)
        return level2color;
    else if (aqi >= 101 && aqi <= 150)
        return level3color;
    else if (aqi >= 151 && aqi <= 200)
        return level4color;
    else if (aqi >= 201 && aqi < 300)
        return level5color;
    else if (aqi >= 300)
        return level6color;
    else
        return "";
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
根据引用\[1\]和引用\[2\]的内容,你可以通过设置`series`中的`name`属性来显示图例。在你的代码中,每个柱状图都有一个`name`属性,分别是"峰"、"平"和"谷"。这些名称将被用作图例的标签。确保在Echarts的配置中设置`legend`属性为`show: true`,以确保图例显示出来。 以下是一个示例代码片段,展示了如何设置图例: ```javascript option = { legend: { show: true }, series: \[ { name: "峰", type: "bar", stack: "值", data: fengList, itemStyle: { color: state.getThemeConfig.curveConfig\[0\], }, }, { name: "平", type: "bar", stack: "值", data: pingList, itemStyle: { color: state.getThemeConfig.curveConfig\[1\], }, }, { name: "谷", type: "bar", stack: "值", data: guList, itemStyle: { color: state.getThemeConfig.curveConfig\[2\], }, }, \], }; ``` 通过以上配置,你的柱状图将会显示具有相应名称的图例。 #### 引用[.reference_title] - *1* [ECharts柱状图图形标签间隔显示](https://blog.csdn.net/jixuziyuan/article/details/127617220)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [echarts 自定义柱状图颜色,并展示图例。](https://blog.csdn.net/qq_44830966/article/details/123991912)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [自定义Echarts柱状图, 一图显示多组数据](https://blog.csdn.net/weixin_40463857/article/details/126158538)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值