У меня есть набор данных, состоящий из координат XYZ, который можно отобразить в виде гистограммы 3D, как показано на рисунке ниже.
Основной вопрос, который у меня возникает: как сгенерировать X точек (X — это ввод пользователя) внутри указанного объема, обеспечивая наилучшее возможное представление ?
Моим первым подходом было использование метода выборки LatinHyper Cube, но, как следует из названия, он предполагал кубическое пространство проектирования. Здесь объем может иметь любую форму.
Затем я попытался применить метод, описанный здесь: https://math.stackexchange.com/question ... nts-within -n- Dimensional-ellipsoid Я надеялся, что этот метод можно будет изменить до любой формы, а не эллипсоида. Это не так (по крайней мере, мне это не удалось).
В качестве «бонусного» вопроса: меня не устраивает метод трехмерной гистограммы, я бы предпочел «правильный» объём. Использование Griddata подразумевает кубическую основу, чего здесь нет.
РЕДАКТИРОВАТЬ:
Мне удалось отобразить свои данные в трехмерном формате. поверхность, которая подходит для моего использования, используя следующее:
У меня есть набор данных, состоящий из координат XYZ, который можно отобразить в виде гистограммы 3D, как показано на рисунке ниже. [img]https ://i.sstatic.net/zOxvGhd5.png[/img]
Основной вопрос, который у меня возникает: как сгенерировать X точек (X — это ввод пользователя) внутри указанного объема, обеспечивая наилучшее возможное представление ? Моим первым подходом было использование метода выборки LatinHyper Cube, но, как следует из названия, он предполагал кубическое пространство проектирования. Здесь объем может иметь любую форму. Затем я попытался применить метод, описанный здесь: https://math.stackexchange.com/questions/2174751/generate-random-points-within -n- Dimensional-ellipsoid Я надеялся, что этот метод можно будет изменить до любой формы, а не эллипсоида. Это не так (по крайней мере, мне это не удалось). В качестве «бонусного» вопроса: меня не устраивает метод трехмерной гистограммы, я бы предпочел «правильный» объём. Использование Griddata подразумевает кубическую основу, чего здесь нет. РЕДАКТИРОВАТЬ: Мне удалось отобразить свои данные в трехмерном формате. поверхность, которая подходит для моего использования, используя следующее: [code]data_2d = [ [2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 0], [0, 0, 6, 8, 10, 12, 14, 16, 18, 20, 22], [0, 0, 0, 0, 0, 12, 14, 16, 18, 20, 22], [0, 0, 0, 0, 0, 12, 14, 16, 18, 20, 0], [0, 0, 0, 0, 0, 0, 14, 16, 18, 0, 0], [0, 0, 0, 0, 0, 0, 14, 16, 18, 0, 0], [0, 0, 0, 0, 0, 0, 14, 16, 18, 0, 0], [0, 0, 0, 0, 0, 0, 14, 16, 18, 0, 0], ] # data_2d: - rows are Hs from 1 to 8 (8 rows) # - columns are Tp from 2 to 22 (10 columns) # - content is the wind speed from 2 to 22