diff --git a/compositionspace/meshes.py b/compositionspace/meshes.py index ffd1573..753e8f8 100644 --- a/compositionspace/meshes.py +++ b/compositionspace/meshes.py @@ -1,33 +1,24 @@ # Import libraries import sys import os -import pandas as pd -import h5py -import numpy as np -from sklearn.decomposition import PCA -from sklearn.mixture import GaussianMixture import json import h5py import numpy as np import pandas as pd import matplotlib.pylab as plt from tqdm import tqdm -import os + +from sklearn.decomposition import PCA +from sklearn.mixture import GaussianMixture +from sklearn.cluster import DBSCAN, KMeans +from sklearn.metrics import silhouette_score, homogeneity_score + from pyevtk.hl import pointsToVTK from pyevtk.hl import gridToVTK#, pointsToVTKAsTIN -from sklearn.cluster import DBSCAN from pyevtk.hl import pointsToVTK from pyevtk.hl import gridToVTK import trimesh -from sklearn.decomposition import PCA -from sklearn.metrics import silhouette_score -from sklearn.cluster import KMeans -from sklearn.mixture import GaussianMixture -from sklearn.metrics import homogeneity_score -#import plotly.graph_objects as go -import numpy as np -import h5py -from sklearn.decomposition import PCA + from scipy.spatial import Delaunay from functools import reduce @@ -40,6 +31,7 @@ def centeroidnp(data_frame): sum_y = np.sum(data_frame['y']) sum_z = np.sum(data_frame['z']) return sum_x/length, sum_y/length, sum_z/length + def centeroid_df(data_frame): length = len(data_frame['x']) sum_x = np.sum(data_frame['x']) diff --git a/environment.yml b/environment.yml index 27523e0..56450e6 100644 --- a/environment.yml +++ b/environment.yml @@ -1,4 +1,4 @@ -name: compspace +name: iuc09 channels: - conda-forge dependencies: @@ -17,3 +17,4 @@ dependencies: - pyvista - ipywidgets - panel + - trimesh diff --git a/tests/20230303_Workflow.ipynb b/tests/20230303_Workflow.ipynb index 9b1b78e..e33e12f 100644 --- a/tests/20230303_Workflow.ipynb +++ b/tests/20230303_Workflow.ipynb @@ -11,23 +11,14 @@ "cell_type": "code", "execution_count": 1, "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/u/gazal/.local/lib/python3.7/site-packages/pandas/compat/_optional.py:138: UserWarning: Pandas requires version '2.7.0' or newer of 'numexpr' (version '2.6.9' currently installed).\n", - " warnings.warn(msg, UserWarning)\n" - ] - } - ], + "outputs": [], "source": [ "# Import libraries\n", "import sys\n", "import os\n", "import json \n", "import pandas as pd\n", - "import matplotlib.pylab as plt\n" + "import matplotlib.pylab as plt" ] }, { @@ -39,7 +30,7 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 2, "metadata": {}, "outputs": [], "source": [ @@ -92,7 +83,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 5, "metadata": { "tags": [] }, @@ -100,12 +91,12 @@ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "b172c80158f1413b9c8fb7b589c04d59", + "model_id": "b64b0c5f24f144b490ce165900b6fa87", "version_major": 2, "version_minor": 0 }, "text/plain": [ - "Reading files: 0%| | 0/3 [00:00" + "
" ] }, - "metadata": { - "needs_background": "light" - }, + "metadata": {}, "output_type": "display_data" } ], @@ -288,7 +277,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 10, "metadata": { "tags": [] }, @@ -296,7 +285,7 @@ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "e77375caeec54595a6e0194d3c3db44d", + "model_id": "99464512a9084399b597c28ed9c758cc", "version_major": 2, "version_minor": 0 }, @@ -309,14 +298,12 @@ }, { "data": { - "image/png": "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\n", + "image/png": "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Hcu2bdto3759wxZjiNsBxqJFizxdRr3KysoyAOObb77xdCn1pnXr1sa///1vT5fhVnl5eUaXLl2Mzz//3LjwwguN++67z9Mluc2MGTOMvn37erqMevPQQw8ZI0eO9HQZDeq+++4zOnXqZDidTk+X4haTJk0ybrnllirXrrzySmPq1Kkeqsi9jh8/bthsNmPp0qVVrvft29d49NFHG7weDVHJWak4XiM0NNTDlbhfWVkZCxcupKCggGHDhnm6HLe6++67mTRpUq3PbWtqdu/eTVRUFPHx8fzmN79hz549ni7JbT755BMGDhzINddcQ9u2bTnvvPN44403PF1WvSkuLmbBggXccsstbj8U2VNGjhzJl19+ya5duwDYtGkTq1evZuLEiR6uzD1KS0spKyvDz8+vynV/f39Wr17d4PVoiErqzDAM7r//fkaOHElCQoKny3GbLVu2MGzYMAoLCwkMDGTRokX07NnT02W5zcKFC9m4caPHxsPr25AhQ5g/fz5du3bl0KFD/O1vf2P48OFs3bqVsLAwT5d3zvbs2cOrr77K/fffzyOPPMK6deu499578fX15YYbbvB0eW63ePFicnJyanXkT1Px0EMP4XA46N69OzabjbKyMv7+979z3XXXebo0twgKCmLYsGE88cQT9OjRg3bt2vHuu+/y448/0qVLl4YvqMH7jFoAmvkQ1V133WV06NDBOHjwoKdLcauioiJj9+7dxvr1640//elPRnh4uLF161ZPl+UWBw4cMNq2bWv88ssvldea2xDVr+Xn5xvt2rUznnvuOU+X4hbe3t7GsGHDqlybNm2aMXToUA9VVL/GjRtnXHLJJZ4uw63effddIzo62nj33XeNzZs3G/PnzzdCQ0ONefPmebo0t0lOTjYuuOACAzBsNpsxaNAg43e/+53Ro0ePBq9FAaceNOeAc8899xjR0dHGnj17PF1KvRszZozxf//3f54uwy0WLVpU+Q9OxQMwLBaLYbPZjNLSUk+XWC/Gjh1r3HnnnZ4uwy1iY2ONW2+9tcq1V155xYiKivJQRfVn3759htVqNRYvXuzpUtwqOjraePnll6tce+KJJ4xu3bp5qKL6k5+fb6SnpxuGYRhTpkwxJk6c2OA1aIhKasUwDKZNm8aiRYv4+uuviY+P93RJ9c4wDIqKijxdhluMGTOGLVu2VLl288030717dx566KFmtdqoQlFREdu3b+f888/3dCluMWLEiNO2Zti1axcdOnTwUEX1Z+7cubRt25ZJkyZ5uhS3On78OFZr1amvNputWS0TrxAQEEBAQADHjh1jxYoVPP300w1egwKOm+Tn55OcnFz5fO/evfzyyy+EhoYSGxvrwcrc4+677+a///0vH3/8MUFBQWRmZgJgt9vx9/f3cHXn7pFHHmHChAnExMSQl5fHwoUL+frrr1m+fLmnS3OLoKCg0+ZLBQQEEBYW1mzmUT344INMnjyZ2NhYsrKy+Nvf/kZubi433nijp0tzi//3//4fw4cP58knn2TKlCmsW7eO119/nddff93TpbmV0+lk7ty53HjjjXh5Na8fUZMnT+bvf/87sbGx9OrVi59//pnnn3+eW265xdOluc2KFSswDINu3bqRnJzMH/7wB7p168bNN9/c8MU0eJ9RM/XVV18ZwGmPG2+80dOluUV13w0w5s6d6+nS3OKWW24xOnToYPj4+Bht2rQxxowZY6xcudLTZdWr5jYH59prrzUiIyMNb29vIyoqyrjyyiubzRyqCkuWLDESEhIMX19fo3v37sbrr7/u6ZLcbsWKFQZg7Ny509OluF1ubq5x3333GbGxsYafn5/RsWNH49FHHzWKioo8XZrbvPfee0bHjh0NHx8fIyIiwrj77ruNnJwcj9RiMQzDaPhYJSIiIlJ/tA+OiIiINDsKOCIiItLsKOCIiIhIs6OAIyIiIs2OAo6IiIg0Owo4IiIi0uwo4IiIiEizo4AjIiIizY4CjoiIiDQ7CjgiIiLS7CjgiIiISLOjgCMiIiLNzv8HexyiAxHJ1FMAAAAASUVORK5CYII=", "text/plain": [ - "
" + "
" ] }, - "metadata": { - "needs_background": "light" - }, + "metadata": {}, "output_type": "display_data" } ], @@ -326,7 +313,7 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 11, "metadata": { "tags": [] }, @@ -337,7 +324,7 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": 12, "metadata": {}, "outputs": [], "source": [ @@ -368,7 +355,7 @@ }, { "cell_type": "code", - "execution_count": 18, + "execution_count": 13, "metadata": {}, "outputs": [], "source": [ @@ -377,7 +364,7 @@ }, { "cell_type": "code", - "execution_count": 20, + "execution_count": 14, "metadata": { "jupyter": { "outputs_hidden": true @@ -388,7 +375,7 @@ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "61f7b731106846fab0defadf769a904e", + "model_id": "32c013dd7cc9409083738a77761edc79", "version_major": 2, "version_minor": 0 }, @@ -401,14 +388,12 @@ }, { "data": { - "image/png": "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\n", + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAikAAAGdCAYAAADXIOPgAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8fJSN1AAAACXBIWXMAAA9hAAAPYQGoP6dpAAAhNElEQVR4nO3df2zU9eHH8ddJ2xNqe6MU7nrjrM0EN20lWXFAo1L5UWwEVExASUyJzIhAk6YQpPAHzbK1yCJo1q8sc4RfysofAzUBlRqgyBqS0kAoaAzGImX01snqXVu7K9b39w/juaNFeuXqvVuej+STcJ/P++7en08+rs997nOtwxhjBAAAYJnb4j0BAACAvhApAADASkQKAACwEpECAACsRKQAAAArESkAAMBKRAoAALASkQIAAKyUEO8JDMS3336ry5cvKyUlRQ6HI97TAQAA/WCMUXt7u7xer2677cbXSYZkpFy+fFk+ny/e0wAAAAPQ3Nys8ePH33DckIyUlJQUSd/tZGpqapxnAwAA+iMYDMrn84V/jt/IkIyU7z/iSU1NJVIAABhi+nurBjfOAgAAKxEpAADASkQKAACwEpECAACsRKQAAAArESkAAMBKRAoAALASkQIAAKxEpAAAACsRKQAAwEpECgAAsBKRAgAArESkAAAAKxEpAADASgnxnoCN7lp7IOLxhY2PxWkmAADcuriSAgAArESkAAAAKxEpAADASkQKAACwEpECAACsRKQAAAArESkAAMBKRAoAALASkQIAAKwUVaRs3bpV999/v1JTU5Wamqpp06bpvffeC283xqi8vFxer1cjR45Ufn6+zp07F/EaoVBIxcXFSk9PV3JysubPn69Lly7FZm8AAMCwEVWkjB8/Xhs3btTJkyd18uRJzZgxQ48//ng4RDZt2qTNmzerqqpK9fX18ng8mj17ttrb28OvUVJSov3796u6ulrHjx9XR0eH5s6dq56entjuGQAAGNIcxhhzMy+QlpamP/7xj3ruuefk9XpVUlKil156SdJ3V03cbrdefvllvfDCCwoEAho7dqx2796tRYsWSZIuX74sn8+ngwcPas6cOf16z2AwKJfLpUAgoNTU1JuZfp/42z0AAMRetD+/B3xPSk9Pj6qrq9XZ2alp06apqalJfr9fBQUF4TFOp1PTp09XXV2dJKmhoUFXr16NGOP1epWdnR0e05dQKKRgMBixAACA4S3qSGlsbNQdd9whp9OpZcuWaf/+/br33nvl9/slSW63O2K82+0Ob/P7/UpKStLo0aOvO6YvlZWVcrlc4cXn80U7bQAAMMREHSn33HOPTp8+rRMnTujFF19UUVGRPv744/B2h8MRMd4Y02vdtW40pqysTIFAILw0NzdHO20AADDERB0pSUlJuvvuuzV58mRVVlZq0qRJeu211+TxeCSp1xWR1tbW8NUVj8ej7u5utbW1XXdMX5xOZ/gbRd8vAABgeLvp35NijFEoFFJWVpY8Ho9qamrC27q7u1VbW6u8vDxJUm5urhITEyPGtLS06OzZs+ExAAAAkpQQzeB169apsLBQPp9P7e3tqq6u1tGjR/X+++/L4XCopKREFRUVmjBhgiZMmKCKigqNGjVKixcvliS5XC4tXbpUq1at0pgxY5SWlqbVq1crJydHs2bNGpQdBAAAQ1NUkfKvf/1Lzz77rFpaWuRyuXT//ffr/fff1+zZsyVJa9asUVdXl5YvX662tjZNmTJFhw4dUkpKSvg1tmzZooSEBC1cuFBdXV2aOXOmduzYoREjRsR2zwAAwJB2078nJR74PSkAAAw9P9nvSQEAABhMRAoAALASkQIAAKxEpAAAACsRKQAAwEpECgAAsBKRAgAArESkAAAAKxEpAADASkQKAACwEpECAACsRKQAAAArESkAAMBKRAoAALASkQIAAKxEpAAAACsRKQAAwEpECgAAsBKRAgAArESkAAAAKxEpAADASkQKAACwEpECAACsRKQAAAArESkAAMBKRAoAALASkQIAAKxEpAAAACsRKQAAwEpECgAAsBKRAgAArESkAAAAKxEpAADASkQKAACwEpECAACsRKQAAAArESkAAMBKRAoAALASkQIAAKxEpAAAACsRKQAAwEpECgAAsBKRAgAArESkAAAAKxEpAADASlFFSmVlpR544AGlpKRo3LhxeuKJJ/Tpp59GjFmyZIkcDkfEMnXq1IgxoVBIxcXFSk9PV3JysubPn69Lly7d/N4AAIBhI6pIqa2t1YoVK3TixAnV1NTom2++UUFBgTo7OyPGPfroo2ppaQkvBw8ejNheUlKi/fv3q7q6WsePH1dHR4fmzp2rnp6em98jAAAwLCREM/j999+PeLx9+3aNGzdODQ0Nevjhh8PrnU6nPB5Pn68R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iUgBAABWIlIAAICViBQAAGAlIgUAAFiJSAEAAFYiUgAAgJWIFAAAYCUiBQAAWIlIAQAAViJSAACAlYgUAABgJSIFAABYiUgBAABWIlIAAICViBQAAGAlIgUAAFiJSAEAAFaKOlKOHTumefPmyev1yuFw6O23347YvmTJEjkcjohl6tSpEWNCoZCKi4uVnp6u5ORkzZ8/X5cuXbqpHQEAAMNL1JHS2dmpSZMmqaqq6rpjHn30UbW0tISXgwcPRmwvKSnR/v37VV1drePHj6ujo0Nz585VT09P9HsAAACGpYRon1BYWKjCwsIfHeN0OuXxePrcFggEtG3bNu3evVuzZs2SJL355pvy+Xz68MMPNWfOnGinBAAAhqFBuSfl6NGjGjdunCZOnKjnn39era2t4W0NDQ26evWqCgoKwuu8Xq+ys7NVV1fX5+uFQiEFg8GIBQAADG8xj5TCwkK99dZbOnz4sF555RXV19drxowZCoVCkiS/36+kpCSNHj064nlut1t+v7/P16ysrJTL5QovPp8v1tMGAACWifrjnhtZtGhR+N/Z2dmaPHmyMjMzdeDAAS1YsOC6zzPGyOFw9LmtrKxMpaWl4cfBYJBQAQBgmBv0ryBnZGQoMzNT58+flyR5PB51d3erra0tYlxra6vcbnefr+F0OpWamhqxAACA4W3QI+XKlStqbm5WRkaGJCk3N1eJiYmqqakJj2lpadHZs2eVl5c32NMBAABDRNQf93R0dOizzz4LP25qatLp06eVlpamtLQ0lZeX66mnnlJGRoYuXLigdevWKT09XU8++aQkyeVyaenSpVq1apXGjBmjtLQ0rV69Wjk5OeFv+wAAAEQdKSdPntQjjzwSfvz9vSJFRUXaunWrGhsbtWvXLn311VfKyMjQI488or179yolJSX8nC1btighIUELFy5UV1eXZs6cqR07dmjEiBEx2CUAADAcOIwxJt6TiFYwGJTL5VIgEBiU+1PuWnsg4vGFjY/F/D0AALjVRPvzm7/dAwAArESkAAAAKxEpAADASjH/ZW4A7HLtPVYS91kBGBq4kgIAAKxEpAAAACsRKQAAwEpECgAAsBKRAgAArESkAAAAKxEpAADASkQKAACwEpECAACsRKQAAAArESkAAMBKRAoAALASkQIAAKxEpAAAACsRKQAAwEpECgAAsBKRAgAArESkAAAA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", "text/plain": [ - "
" + "
" ] }, - "metadata": { - "needs_background": "light" - }, + "metadata": {}, "output_type": "display_data" } ], @@ -416,6 +401,14 @@ "pdata.DBSCAN_clustering(comps.voxel_centroid_output_file, cluster_id = 0,\n", " plot=True, plot3d=True, save=True)" ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "fb6414fa", + "metadata": {}, + "outputs": [], + "source": [] } ], "metadata": { @@ -434,7 +427,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.3" + "version": "3.12.2" } }, "nbformat": 4, diff --git a/tests/Mesh_analysis.ipynb b/tests/Mesh_analysis.ipynb index 69cd376..6603b92 100644 --- a/tests/Mesh_analysis.ipynb +++ b/tests/Mesh_analysis.ipynb @@ -27,37 +27,16 @@ { "cell_type": "code", "execution_count": 2, - "id": "2f1898bf", - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "/talos/u/gazal/APT_SiGe/CompositionSpaceNFDI/tests\r\n" - ] - } - ], - "source": [ - "MYPREFIX='/u/gazal/APT_SiGe/CompositionSpaceNFDI'\n", - "CWD = os.getcwd()\n", - "sys.path.append(MYPREFIX)\n", - "! echo $PWD" - ] - }, - { - "cell_type": "code", - "execution_count": 3, "id": "f8a46943", "metadata": {}, "outputs": [], "source": [ - "from compositionspace.datautils import Prepare_data\n", + "from compositionspace.datautils import DataPreparation\n", "import json \n", "import pandas as pd\n", "import matplotlib.pylab as plt\n", - "from compositionspace.segmentation import Composition_clustering\n", - "from compositionspace.postprocessing import Postprocess_data\n", + "from compositionspace.segmentation import CompositionClustering\n", + "from compositionspace.postprocessing import DataPostprocess\n", "from compositionspace.meshes import *" ] }, @@ -68,7 +47,7 @@ "metadata": {}, "outputs": [], "source": [ - "Vox_centroid_file = '/u/gazal/APT_SiGe/output/output_voxels/Output_voxel_cetroids_phases.h5'\n", + "Vox_centroid_file = 'output/output_voxels/Output_voxel_cetroids_phases.h5'\n", "Vox_ratios = \"/u/gazal/APT_SiGe/output/output_voxels/Output_voxel_composition.h5\"\n", "Slices_file = '/u/gazal/APT_SiGe/output/output_voxels/Output_big_slices.h5'\n", "Dbscan_results = \"/u/gazal/APT_SiGe/output/output_voxels/Output_DBSCAN_segmentation_phase_1.h5\"" @@ -249,7 +228,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6" + "version": "3.12.2" } }, "nbformat": 4, diff --git a/tests/experiment_params.yaml b/tests/experiment_params.yaml index e7995ca..b7d2109 100644 --- a/tests/experiment_params.yaml +++ b/tests/experiment_params.yaml @@ -1,4 +1,4 @@ -input_path: tests/data +input_path: data output_path: output n_big_slices: 10 voxel_size: 2