Почему отображение данных в ILNumerics дает результат, который не является симметричным? (2D-график)
У меня есть код ILNumerics, как это:
var scene = new ILScene();
ILColormap cm = new ILColormap(Colormaps.Hot);
ILArray<float> data = cm.Data;
data[":;0"] = ILMath.pow(data[":;0"], 3.0f);
cm.Data = data;
ILArray<float> contoh = ILMath.zeros<float>(15, 15);
contoh[7, 14] = 1;
scene.Add(
new ILPlotCube(twoDMode: false){
new ILSurface(contoh){
Wireframe = { Color = Color.FromArgb(50, Color.LightGray)},
Colormap = new ILColormap(data),
Children = { new ILColorbar()}
}
}
);
ilPanel1.Scene = scene;
Грубо говоря, я хочу построить 2D модель. В этой матрице "contoh" у меня есть одно значение, которое отличается от других соседей. Я хочу построить эту матрицу примерно так:
Но есть то, что я получил:
Если мы видим белую область, это не симметрия. Почему это случилось? Когда я слегка поворачиваю модель, мы можем более четко видеть, что даже у меня есть данные в положении [14,7], белая область растягивается до [13,6], но не до [13,8].
И для последнего. Может кто-нибудь научить меня, как сделать код, который будет генерировать фигуру, как на рисунке 1?
1 ответ
Оба участка разные, потому что они разного типа. Matlab one - это imagesc, ILNumerics - это поверхность. Сюжеты Imagesc будут доступны для ILNumerics в следующем выпуске.