会嘛呀 2019-12-28 12:37 采纳率: 0%
浏览 1551

用Echarts制作饼图没有显示。

用Echarts制作饼图没有显示,pie页面代码如下:

<%@ page language="java" contentType="text/html; charset=UTF-8"
         pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <script type="text/javascript"
            src="js/jquery-1.11.3.js"></script>
    <script type="text/javascript"
            src="js/echarts.min.js"></script>

    <title>饼图例子</title>
</head>
<body>

<div id="mainChart" style="width: 600px;height:400px;">

</div>

<script type="text/javascript">
    //使用ajax加载数据
    $.ajax({
        method : 'post',
        url : 'pie',
        dataType : 'json',
        success : function(data) {//data格式:[{name:nameValue,value:valueVal},...]
            initChat(data);
        }
    });
    function initChat(data) {
        var myChart = echarts.init(document.getElementById('mainChart'));
        option = {
            backgroundColor: '#cccccc',
            color:["#D53A35","#296294"],
            title : {
                text : '用户性别聚合分析',
                x : 'center'
            },
            tooltip : {
                trigger : 'item',
                formatter : "{a} <br/>{b} : {c} ({d}%)"
            },
            legend : {
                orient : 'vertical',
                left : 'left',
                data : formatData(data).xAxData
            },
            series : [ {
                name : '男女数量',
                type : 'pie',
                radius : '55%',
                center : [ '50%', '60%' ],
                color:['#297ca3','#c35b3b'],
                data : formatData(data).serData,
                itemStyle : {
                    emphasis : {
                        shadowBlur : 10,
                        shadowOffsetX : 0,
                        shadowColor : 'rgba(0, 0, 0, 0.5)'
                    }
                }
            } ]
        };
        myChart.setOption(option, true);
    };
    function formatData(data) {
        var xAxData = [];
        var serData = [];

        for (var i = 0; i < data.length; i++) {
            xAxData.push(data[i].name || "");
            serData.push({
                name : data[i].name,
                value : data[i].value || 0
            });
        }

        return {
            xAxData : xAxData,
            serData : serData
        };
    };
</script>
</body>
</html>



我把这篇代码删掉,只输出个字符串,是可以显示的,把这个代码放上就不行了,我感觉应该是这篇代码的问题,我把Controller的代码放在下面:

package com.ssh.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

@Controller
public class EchartsController {

    @RequestMapping("/topie")
    public String toPie(){
        return "pie";
    }

    @RequestMapping(value="pie",method= RequestMethod.POST)
    @ResponseBody  //处理的是异步请求,并且响应的结果是json格式
    public List<Map<String, Object>> getPieData() {
        List<Map<String, Object>> data = new ArrayList<>();
        Map<String, Object> map = new HashMap<String, Object>();
        map.put("name", "男");
        map.put("value", "20");
        data.add(map);
        map = new HashMap<String, Object>();
        map.put("name", "女");
        map.put("value", "30");
        data.add(map);
        return data;
    }
}

找了很久,也没找到问题,求大神帮助!!!!

我的项目目录如下:
图片说明

问题已解决:
应该是js文件没有引入,我开始调了很长时间都没有用,js那删了改 改了删
但最后还是和现在代码一样,但是可以显示了,昨天弄了很久都没弄出来,哎,具体原因,为什么会这样,我也不是很清楚,有懂得大神吗,求解答
结果现在是这样这样的
图片说明

  • 写回答

1条回答

报告相同问题?

悬赏问题

  • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝
  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
  • ¥15 错误 LNK2001 无法解析的外部符号
  • ¥50 安装pyaudiokits失败
  • ¥15 计组这些题应该咋做呀
  • ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?
  • ¥15 让node服务器有自动加载文件的功能
  • ¥15 jmeter脚本回放有的是对的有的是错的
  • ¥15 r语言蛋白组学相关问题