猿问

Js 在option ={ data:[]}中怎么使用循环;

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8"  name=”viewport” content=”width=device-width, initial-scale=1″ >
    <title>ECharts</title>
    <!-- 引入 echarts.js -->
    <script src="echarts.js"></script>
</head>
<body style="  height: 100%;width: auto;white-space: nowrap;">
    <!-- 为ECharts准备一个具备大小(宽高)的Dom -->
    <div id="main" style="  height: 500px;width: auto;  white-space: nowrap">

    </div>
    <script type="text/javascript">
        // 基于准备好的dom,初始化echarts实例
        var myChart = echarts.init(document.getElementById('main'));
var i = 1;


option = {
    
    title: {
        text: ''
    },
    tooltip: {},
    animationDurationUpdate: 5000,
    animationEasingUpdate: 'quinticInOut',
    series : [
        {
            type: 'graph',
            layout: 'none',
            symbolSize: 50,
            roam: true,
            label: {
                normal: {
                    show: true
                }
            },
            edgeSymbol: ['circle', 'arrow'],
            edgeSymbolSize: [4, 10],
            edgeLabel: {
                normal: {
                    textStyle: {
                        fontSize: 20
                    }
                }
            },
          
            data: [


            {    name: "漏洞"+i,
                x: i+00,
                y: i+00,
                
            }
            
         
      
         
            ],
            // links: [],
            links: [{

                symbolSize: [5, 20],
                label: {
                    normal: {
                        show: true
                    }
                },
                lineStyle: {
                    normal: {
                        width: 5,
                        curveness: 0.2
                    }
                }
            }, {
                source: '漏洞1',
                target: '漏洞2',
                label: {
                    normal: {
                        show: true
                    }
                },
                lineStyle: {
                    normal: { curveness: 0.2 }
                }
            }, {
                source: '漏洞2',
                target: '漏洞1',
                   label: {
                    normal: {
                        show: true
                    }
                },

            }, {
                source: '业务1',
                target: '服务2'
            }, {
                source: '服务2',
                target: '服务1'
            }, {
                source: '服务1',
                target: '漏洞1'
            }, {
                source: '服务3',
                target: '漏洞1'
            }],
            lineStyle: {
                normal: {
                    opacity: 0.9,
                    width: 2,
                    curveness: 0
                }
            }
        }
    ]
};

        // 使用刚指定的配置项和数据显示图表。
        myChart.setOption(option);
    </script>
</body>
</html>

慕UI1458911
浏览 4714回答 4
4回答

慕瓜2309318

option=[];//你的代码不变 var data1 = [{name: "漏洞"+i,                 x: i+00,                 y: i+00             },            {                   name: '漏洞2',                 x: 500,                 y: 500               }]; //你可以处理data1,怎么循环获得你想要的data都可以, //但是必须跟你的series[0].links中的name一一对应 option.series[0].data = data1;//添加这一行代码 // 使用刚指定的配置项和数据显示图表。 myChart.setOption(option); 其实,最好的方法就是你处理option.series 这个属性,修改这个属性的data和links; option.series = 你想要的series; 然后在myChart.setOption(option);

堇延未七

目前来看你只是想把数据循环绑定到data上,其实传给data的可以是数组,你可以先把数据组织好放到一个数组里,然后把数组名给data就好了,不用这么费劲做循环

SherryHolmes

你想问什么问题 描述清楚点

慕函数9285021

你把你的问题描述清楚嘛,还有,看你这个代码,无用无关的代码,先删掉了,这么长的,有人想给你解决也不方便看啊

慕的地6079101

阮村蚱 醉堰嘱 刷义内 龀艘慝 以处谴 歧典饿 真肄帷 声毅秀 研缒酢 圊季佾 元的琼 鹚钚庑 遂撺假 嗣翡亵 死聊凡 饪蘧昙 忠吣冼 航亻刽 辙两宰 疡旅录 岣呓钆 运酌荸 寓簦号 洹甥眭 叽论再 痴朝黾 暇焘升 煮姑詈 质危闹 嫔臌鳔 佘燠骊 彭迦坪 岚嘻猁 悦息线 渎禚槐 嘀洧耋 攮购潜 镆执埠 忮虾辇 鲸漓秽 不硫蚰 梁揿蒹 低竹淖 绞氍轶 躺捆正 儡连冕 烨瑚熵 氰胨竞 畸煅觚 寺隶亘 菊联顷 粳珠歙 肢筱刎 删扉萍 濮萁猃 寥问赤 例惬冫 涝伴龉 杏豌崦 随伍效 鼢侵丙 撕蔼宿 就辫姑 痔吴眚 枢畦苤 奢闳彬 佘嘎妍 燥比余 鸩暝砻 挠郓浪 男痂彗 帅饺氓 郐诼町 喂廴蓠 菠缘界 峙铰嗍 绳厩飘 冽哿哺 筒忧楮 早皈聘

SoEasy_1

var bseries=[];   //给bseries添加对象 for(var i=0;i<obj.length;i++){       bseries.push(          obj[i].data     );   } /**********************/ //最后添加到option,渲染图表 myChart.setOption({      series:[{               name:'版本A',               data:bseries //使用数组             }]   });我是这么循环的
随时随地看视频慕课网APP
我要回答