鍍金池/ 問答/網(wǎng)絡安全  HTML/ 什么是以行為主序的二維數(shù)組?

什么是以行為主序的二維數(shù)組?

echarts-gl繪制曲面

用echarts-gl繪制曲面時,提供了一組二維數(shù)組,echarts報錯提示要提供以行為主序的二維數(shù)組:

echarts-gl.js:51001 Uncaught (in promise) Error: Invalid data. data should be a row major 2d array.
    at ExtendedClass._getDataShape (echarts-gl.js:51001)
    at ExtendedClass.render (echarts-gl.js:50617)
    at Task.progress (echarts.js:23685)
    at doProgress (echarts.js:22678)
    at Task.taskProto.perform (echarts.js:22601)
    at echarts.js:26562
    at ExtendedClass.<anonymous> (echarts.js:20645)
    at Array.forEach (<anonymous>)
    at each$1 (echarts.js:524)
    at ExtendedClass.eachSeries (echarts.js:20643)

echarts-gl中的一個二維數(shù)組示例,用這個二維數(shù)組可以繪制出一個曲面來,我看了下這個二維數(shù)組,數(shù)組中每個元素(一維數(shù)組中的每個元素對應x、y、z坐標)中的第一個元素(x坐標)是按從小到大排列的。如果打亂這個順序,就無法繪制出曲面來,但打亂y或z的順序則沒有影響,都可以繪制出曲面來。

data: [
    [-1,-1,0],[-0.5,-1,0],[0,-1,0],[0.5,-1,0],[1,-1,0],
    [-1,-0.5,0],[-0.5,-0.5,1],[0,-0.5,0],[0.5,-0.5,-1],[1,-0.5,0],
    [-1,0,0],[-0.5,0,0],[0,0,0],[0.5,0,0],[1,0,0],
    [-1,0.5,0],[-0.5,0.5,-1],[0,0.5,0],[0.5,0.5,1],[1,0.5,0],
    [-1,1,0],[-0.5,1,0],[0,1,0],[0.5,1,0],[1,1,0]
]

繪制的曲面如下:

clipboard.png

請問什么是以行為主序的二維數(shù)組?

回答
編輯回答
孤慣

假設你有一個二維數(shù)組 a3,三行兩列,想象成一個矩陣。
如果按照 row major(從左到右,即從行選取元素,然后從上到下?lián)Q行),程序讀取數(shù)據(jù)的順序是 a[0][0], a[0][1], a[1][0], a[1][1], a[2][0], a[2][1],按照行號順序來

翻看它的源碼,只要 x比前面的小,就會報錯。
clipboard.png

2017年7月25日 14:20