{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Exporting data\n",
    "\n",
    "Export the values of Ultimate tensile strength, Modulus, Baseline fiber volume, and Poisson's ratio for a set of records from the MI Training database.\n",
    "\n",
    "This example demonstrates:\n",
    "\n",
    "* Retrieving a list of databases from a Granta MI server\n",
    "* Browsing the tables of a Granta MI database\n",
    "* Searching a Granta MI database using the *CriteriaSearch* operation\n",
    "* Retrieving values for attributes of a record\n",
    "\n",
    "## Create a Granta MI Session\n",
    "\n",
    "Import the GRANTA_MIScriptingToolkit package, and create a connection to a Granta MI server."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import GRANTA_MIScriptingToolkit as gdl\n",
    "\n",
    "session = gdl.GRANTA_MISession('http://localhost/mi_servicelayer', autoLogon=True)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Get the Databases\n",
    "\n",
    "Access the browse service from the session and execute the *GetDatabases* method."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Found 2 databases on the Granta MI Server\n",
      "Database key: MI_Training, Database name: MI Training\n",
      "Database key: MI_Pro, Database name: MI Pro"
     ]
    }
   ],
   "source": [
    "browseService = session.browseService\n",
    "databases = browseService.GetDatabases().databases\n",
    "\n",
    "print(\"Found {0} databases on the Granta MI Server\".format(len(databases)))\n",
    "for d in databases:\n",
    "    print(\"Database key: {0.DBKey}, Database name: {0.name}\".format(d))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Use pandas to display the available databases."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>DBKey</th>\n",
       "      <th>DBName</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>MI_Training</td>\n",
       "      <td>MI Training</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>MI_Pro</td>\n",
       "      <td>MI Pro</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "import pandas as pd\n",
    "\n",
    "df = pd.DataFrame({'DBKey': [db.DBKey for db in databases],\n",
    "                  'DBName': [db.name for db in databases]})\n",
    "df"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Get the tables in a database\n",
    "\n",
    "Use the *GetTables* method from the browse service to see what tables are available in the MI Training database."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Found 14 tables in database MI_Training\n",
      "Table name: MaterialUniverse\n",
      "Table name: ProcessUniverse\n",
      "Table name: Restricted Substances\n",
      "Table name: Legislations and Lists\n",
      "Table name: Design Data\n",
      "Table name: Composite Design Data\n",
      "Table name: Tensile Statistical Data\n",
      "Table name: Tensile Test Data\n",
      "Table name: Metals Pedigree\n",
      "Table name: Composite Pedigree\n",
      "Table name: AM Builds\n",
      "Table name: Training Exercise (completed)\n",
      "Table name: Training Exercise for Import\n",
      "Table name: Files for Training\n"
     ]
    }
   ],
   "source": [
    "dbKey = \"MI_Training\"\n",
    "\n",
    "tables = browseService.GetTables(gdl.GetTables(DBKey=dbKey)).tableDetails\n",
    "\n",
    "print(\"Found {0} tables in database {1}\".format(len(tables), dbKey))\n",
    "for t in tables:\n",
    "    print(\"Table name: {0}\".format(t.tableReference.name))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Searching a database\n",
    "\n",
    "Search MI Training for all records in the Tensile Test Data table which have a defined *Young's modulus (11-axis) (normalized)*"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "table = 'Tensile Test Data'\n",
    "attribute = \"Young's modulus (11-axis) (normalized)\"\n",
    "\n",
    "tableRef = gdl.PartialTableReference(tableName=table)\n",
    "attrRef = gdl.AttributeReference(name=attribute, DBKey=dbKey, partialTableReference=tableRef)\n",
    "searchCriterion = gdl.RecordSearchCriterion(searchAttribute=attrRef, existsSearchValue=gdl.ExistsSearchValue())\n",
    "request = gdl.CriteriaSearch(DBKey=dbKey, searchCriteria=[searchCriterion])\n",
    "\n",
    "searchResults = session.searchService.CriteriaSearch(request).searchResults"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Print the *shortName* and *longName* of each of the records returned by the search."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>ShortName</th>\n",
       "      <th>LongName</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>LBJ1311A</td>\n",
       "      <td>S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>LBJ1312A</td>\n",
       "      <td>S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>LBJ6213A</td>\n",
       "      <td>S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>LBJ4211A</td>\n",
       "      <td>S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>LBJ4213A</td>\n",
       "      <td>S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>LBJ8312A</td>\n",
       "      <td>S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>LBJ8313A</td>\n",
       "      <td>S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>LBJ6212A</td>\n",
       "      <td>S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>LBJ5311A</td>\n",
       "      <td>S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>LBJ5312A</td>\n",
       "      <td>S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>LBJ8311A</td>\n",
       "      <td>S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>LBJ6214A</td>\n",
       "      <td>S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td>LBJ5313A</td>\n",
       "      <td>S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13</th>\n",
       "      <td>LBJ4212A</td>\n",
       "      <td>S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>14</th>\n",
       "      <td>LBJ1313A</td>\n",
       "      <td>S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   ShortName                                           LongName\n",
       "0   LBJ1311A  S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...\n",
       "1   LBJ1312A  S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...\n",
       "2   LBJ6213A  S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...\n",
       "3   LBJ4211A  S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...\n",
       "4   LBJ4213A  S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...\n",
       "5   LBJ8312A  S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...\n",
       "6   LBJ8313A  S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...\n",
       "7   LBJ6212A  S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...\n",
       "8   LBJ5311A  S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...\n",
       "9   LBJ5312A  S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...\n",
       "10  LBJ8311A  S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...\n",
       "11  LBJ6214A  S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...\n",
       "12  LBJ5313A  S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...\n",
       "13  LBJ4212A  S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...\n",
       "14  LBJ1313A  S-Glass Unitape S2/SP381, 3M, 0° tension, Spec..."
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df2 = pd.DataFrame({'ShortName': [r.shortName for r in searchResults],\n",
    "                     'LongName': [r.longName  for r in searchResults]})\n",
    "df2"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Export data from records\n",
    "\n",
    "Create attribute references for the attributes you want to export and export data from all records."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "attributes = [\"Young's modulus (11-axis) (normalized)\", \"Ultimate tensile strength (normalized)\",\n",
    "\t\t\t  \"Baseline fiber volume\", \"Elastic Poisson's Ratio (12-plane)\"]\n",
    "\n",
    "attrRefs = [gdl.AttributeReference(name=a, DBKey=dbKey, partialTableReference=tableRef) for a in attributes]\n",
    "recordRefs = [r.recordReference for r in searchResults]\n",
    "request = gdl.GetRecordAttributesByRefRequest(recordReferences=recordRefs, attributeReferences=attrRefs)\n",
    "       \n",
    "recordData = session.dataExportService.GetRecordAttributesByRef(request).recordData"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Print the values of the attributes from the exported records. Note that some records may not have values for all attributes."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>ShortName</th>\n",
       "      <th>LongName</th>\n",
       "      <th>Young's modulus (11-axis) (normalized)</th>\n",
       "      <th>Ultimate tensile strength (normalized)</th>\n",
       "      <th>Baseline fiber volume</th>\n",
       "      <th>Elastic Poisson's Ratio (12-plane)</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>LBJ1311A</td>\n",
       "      <td>S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...</td>\n",
       "      <td>47.118775</td>\n",
       "      <td>1566.964731</td>\n",
       "      <td>53.473</td>\n",
       "      <td>0.272</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>LBJ1312A</td>\n",
       "      <td>S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...</td>\n",
       "      <td>47.828935</td>\n",
       "      <td>1557.622334</td>\n",
       "      <td>53.473</td>\n",
       "      <td>0.252</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>LBJ6213A</td>\n",
       "      <td>S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...</td>\n",
       "      <td>47.911673</td>\n",
       "      <td>1392.975515</td>\n",
       "      <td>53.473</td>\n",
       "      <td>0.266</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>LBJ4211A</td>\n",
       "      <td>S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...</td>\n",
       "      <td>48.028883</td>\n",
       "      <td>1535.152318</td>\n",
       "      <td>53.473</td>\n",
       "      <td>0.242</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>LBJ4213A</td>\n",
       "      <td>S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...</td>\n",
       "      <td>48.042673</td>\n",
       "      <td>1601.486784</td>\n",
       "      <td>53.473</td>\n",
       "      <td>0.259</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>LBJ8312A</td>\n",
       "      <td>S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...</td>\n",
       "      <td>49.276835</td>\n",
       "      <td>1559.477024</td>\n",
       "      <td>53.473</td>\n",
       "      <td>0.258</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>LBJ8313A</td>\n",
       "      <td>S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...</td>\n",
       "      <td>47.966831</td>\n",
       "      <td>1571.811746</td>\n",
       "      <td>53.473</td>\n",
       "      <td>0.251</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>LBJ6212A</td>\n",
       "      <td>S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...</td>\n",
       "      <td>49.076887</td>\n",
       "      <td>1379.806528</td>\n",
       "      <td>53.473</td>\n",
       "      <td>0.270</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>LBJ5311A</td>\n",
       "      <td>S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...</td>\n",
       "      <td>48.725254</td>\n",
       "      <td>1559.456339</td>\n",
       "      <td>53.473</td>\n",
       "      <td>0.254</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>LBJ5312A</td>\n",
       "      <td>S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...</td>\n",
       "      <td>48.835570</td>\n",
       "      <td>1483.241686</td>\n",
       "      <td>53.473</td>\n",
       "      <td>0.272</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>LBJ8311A</td>\n",
       "      <td>S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...</td>\n",
       "      <td>48.428779</td>\n",
       "      <td>1556.643278</td>\n",
       "      <td>53.473</td>\n",
       "      <td>0.272</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>LBJ6214A</td>\n",
       "      <td>S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...</td>\n",
       "      <td>46.387931</td>\n",
       "      <td>1322.511090</td>\n",
       "      <td>53.473</td>\n",
       "      <td>0.264</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td>LBJ5313A</td>\n",
       "      <td>S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...</td>\n",
       "      <td>47.249776</td>\n",
       "      <td>1490.005443</td>\n",
       "      <td>53.473</td>\n",
       "      <td>0.253</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13</th>\n",
       "      <td>LBJ4212A</td>\n",
       "      <td>S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...</td>\n",
       "      <td>45.774298</td>\n",
       "      <td>1580.774931</td>\n",
       "      <td>53.473</td>\n",
       "      <td>0.306</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>14</th>\n",
       "      <td>LBJ1313A</td>\n",
       "      <td>S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...</td>\n",
       "      <td>44.236767</td>\n",
       "      <td>1505.711702</td>\n",
       "      <td>53.473</td>\n",
       "      <td>0.264</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   ShortName                                           LongName  \\\n",
       "0   LBJ1311A  S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...   \n",
       "1   LBJ1312A  S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...   \n",
       "2   LBJ6213A  S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...   \n",
       "3   LBJ4211A  S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...   \n",
       "4   LBJ4213A  S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...   \n",
       "5   LBJ8312A  S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...   \n",
       "6   LBJ8313A  S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...   \n",
       "7   LBJ6212A  S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...   \n",
       "8   LBJ5311A  S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...   \n",
       "9   LBJ5312A  S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...   \n",
       "10  LBJ8311A  S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...   \n",
       "11  LBJ6214A  S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...   \n",
       "12  LBJ5313A  S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...   \n",
       "13  LBJ4212A  S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...   \n",
       "14  LBJ1313A  S-Glass Unitape S2/SP381, 3M, 0° tension, Spec...   \n",
       "\n",
       "    Young's modulus (11-axis) (normalized)  \\\n",
       "0                                47.118775   \n",
       "1                                47.828935   \n",
       "2                                47.911673   \n",
       "3                                48.028883   \n",
       "4                                48.042673   \n",
       "5                                49.276835   \n",
       "6                                47.966831   \n",
       "7                                49.076887   \n",
       "8                                48.725254   \n",
       "9                                48.835570   \n",
       "10                               48.428779   \n",
       "11                               46.387931   \n",
       "12                               47.249776   \n",
       "13                               45.774298   \n",
       "14                               44.236767   \n",
       "\n",
       "    Ultimate tensile strength (normalized)  Baseline fiber volume  \\\n",
       "0                              1566.964731                 53.473   \n",
       "1                              1557.622334                 53.473   \n",
       "2                              1392.975515                 53.473   \n",
       "3                              1535.152318                 53.473   \n",
       "4                              1601.486784                 53.473   \n",
       "5                              1559.477024                 53.473   \n",
       "6                              1571.811746                 53.473   \n",
       "7                              1379.806528                 53.473   \n",
       "8                              1559.456339                 53.473   \n",
       "9                              1483.241686                 53.473   \n",
       "10                             1556.643278                 53.473   \n",
       "11                             1322.511090                 53.473   \n",
       "12                             1490.005443                 53.473   \n",
       "13                             1580.774931                 53.473   \n",
       "14                             1505.711702                 53.473   \n",
       "\n",
       "    Elastic Poisson's Ratio (12-plane)  \n",
       "0                                0.272  \n",
       "1                                0.252  \n",
       "2                                0.266  \n",
       "3                                0.242  \n",
       "4                                0.259  \n",
       "5                                0.258  \n",
       "6                                0.251  \n",
       "7                                0.270  \n",
       "8                                0.254  \n",
       "9                                0.272  \n",
       "10                               0.272  \n",
       "11                               0.264  \n",
       "12                               0.253  \n",
       "13                               0.306  \n",
       "14                               0.264  "
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "s = [None]*len(df2)\n",
    "for attribute in attributes:\n",
    "    for idx, record in enumerate(recordData):\n",
    "        attrValue = next((x for x in record.attributeValues if x.attributeName == attribute), None)\n",
    "        s[idx] = attrValue.pointDataType.points[0].value if attrValue else None\n",
    "    df2[attribute] = s\n",
    "    \n",
    "df2"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Create a plot of the exported values"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<AxesSubplot:xlabel='Ultimate tensile strength (normalized)', ylabel=\"Young's modulus (11-axis) (normalized)\">"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 720x504 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib\n",
    "\n",
    "df2.plot.scatter(x=\"Ultimate tensile strength (normalized)\", y=\"Young's modulus (11-axis) (normalized)\", loglog=False,\n",
    "\t\t\t\t c=\"Elastic Poisson's Ratio (12-plane)\", colormap=\"afmhot\", norm=matplotlib.colors.LogNorm(),\n",
    "                 grid=True, figsize=(10, 7))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "anaconda-cloud": {},
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.8.0"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 1
}
