Раскраска точек на 3D графике

Для анализа статистических данных или формирования входных значений, может оказаться полезной возможность цветовой интерпретации результатов.

В данной статье приведён пример, как сформировать массив случайно расположенных точек, раскрашенных, согласно заданной цветовой карте. Случайные коордиинаты точек сформированы покомпонетно функцией rand(). В данном случае, координаты принимают значения от 0 до 1.

Далее, с помощью функции jetcolormap, вычисляется цветовая карта с n цветами, варьирующимися от синего, голубого, зеленого, желтого, оранжевого, и до красного.

Далее, с помощью функции param3d1 все точки добавляются на трёхмерную плоскость, но остаются невидимыми благодаря drawlater. Пока эти точки чёрные.

Настроив параметры отображени точек в пространсве, можем приступать к их раскраршиванию в цикле dots(i).mark_foreground = w(i).

И только после присвоения случайно сформированного цвета, каждой из 500 точек, мы включаем их видимость на графике с помощью drawnow.


clc; clf();

nc = 100; // количество оттенков точек
n = 500; // количество точек
x = rand(1,n); y = rand(1,n); z = rand(1,n); // 3 случайны вектора с 500 значениями
w = rand(1,n)*nc;


f = gcf();
f.color_map = jetcolormap(nc);
drawlater
param3d1([x ; x],[y ; y],[z ; z])

// Задание вида точки:
e = gce();
dots = e.children;
dots.mark_mode = "on";
dots.mark_size_unit = "point";
dots.mark_size = 5;

// Раскраска точек:
for i = 1:length(dots)
    dots(i).mark_foreground = w(i);
end
drawnow
Случайные точки случайного цвета в 3-х мерном пространстве.

Результат работы программы:

Рисунок. Генерируем конечное число точек случайного цвета в scilab. Рисунок. Генерируем конечное число точек случайного цвета в scilab.

Комментарии

Гость
Ответить
Войдите, чтобы оставить комментарий.
Гость
Ответить
Гость
Ответить
Гость
Ответить
Еще нет комментариев, оставьте первый.