Published unlisted
Edited
Jan 3, 2022
Insert cell
# Gráfica Exoplanetas (CSV File)
Insert cell
//import { vl } from "@vega/vega-lite-api"
Insert cell
import {vl} from "@vega/vega-lite-api-v5"

Insert cell
import {addTooltips} from "@mkfreeman/plot-tooltip"
Insert cell
viewof island = Inputs.checkbox([ "Torgersen", "Biscoe", "Dream" ], { value: ["Torgersen", "Biscoe", "Dream" ] })
Insert cell
Changed in base
viewof scatter = vl.markCircle() .params(vl.selectInterval().bind("scales")) .encode(
-
vl.x().fieldQ("pl_flux").scale({domain:[0, 2]}).axis({values:[0, 0.250, 0.50, 0.750, 1, 1.250, 1.50, 1.75, 2]}), vl.y().fieldQ("st_teff").scale({domain:[0, 7000]}).axis({values:[0, 1000, 2000, 3000, 4000, 5000, 6000, 7000]}), vl.size().fieldQ("st_teff"),
+
vl.x().fieldQ("sy_pnum"), vl.y().fieldQ("st_teff"),
vl.tooltip(["pl_name", "hostname"]),
-
vl.color().fieldQ("st_teff")
+
vl.color().fieldN("pl_name")
)
-
.width(500).height(500) .data(getPl_Flux) .render()
+
.width(940).height(450) .data(dataPlanetas1) .render()
Insert cell
Removed in base
function getAllTemps(starTemp) {
let temperature = starTemp.st_teff;
return temperature;
}
Insert cell
Removed in base
function getMagnitude(starMag){
let starMagnitude = starMag.sy_vmag;

return starMagnitude;
}
Insert cell
columnsToKeep = [ "st_teff", "sy_vmag", "sy_dist", "spectClass"]
Insert cell
temperature = Object.values(newDataPlanetas).map(d => d.st_teff)
Insert cell
Removed in base
let results = []
for (const planets in newDataPlanetas) {
console.log(`${planets.pl_name}: ${planets[st_teff]+}`);
results.push( (planets.st_teff+)/3.142 )
}
Insert cell
Removed in base
function getArray(newDataPlanetas) {
let result = []
const transformedArray = [];
for(const planets in newDataPlanetas){
console.log(`${planets.pl_name}: ${planets[st_teff]+}`);
results.push( (planets.st_teff+)
for (const row of newDataPlanetas) {
const transformedRow = {};
for (const column of columnsToKeep) {
transformedRow[column] = row[column];
}
if(results < 3500){
transformedArray.push(Object.assign({}, transformedRow, {bolcon: -2.0}));
}
}

}
return transformedArray;
}
Insert cell
Added in base
getSpectBolconAbsMagArray = {
  const transformedArray = [];

  for (const row of dataPlanetas) {
    // const transformedRow = {};
    // for (const column of columnsToKeep) {
    //   transformedRow[column] = row[column];
    // }    

    if(row.st_teff < 3500){
      //  transformedArray.push(Object.assign({}, transformedRow, {bolcon: -2.0}));

      transformedArray.push( {st_teff: +row.st_teff, 
                              sy_vmag: +row.sy_vmag, 
                              pl_orbsmax: +row.pl_orbsmax, 
                              sy_dist: +row.sy_dist,
                              spectClass: 'M', 
                              bolcon: -2.0,
                              absMag: row.sy_vmag - 5*Math.log10(row.sy_dist/10)})
    }
    else if (row.st_teff > 3500 && row.st_teff < 5000){

       transformedArray.push( {st_teff: +row.st_teff, 
                              sy_vmag: +row.sy_vmag, 
                              pl_orbsmax: +row.pl_orbsmax,
                               sy_dist: +row.sy_dist,
                              spectClass: "K", 
                              bolcon: -2.0,
                              absMag: row.sy_vmag - 5*Math.log10(row.sy_dist/10)})

    }
    else if (row.st_teff > 5000 && row.st_teff < 6000){

        transformedArray.push( {st_teff: +row.st_teff, 
                              sy_vmag: +row.sy_vmag, 
                              pl_orbsmax: +row.pl_orbsmax, 
                                sy_dist: +row.sy_dist,
                              spectClass: "G", 
                              bolcon: -0.4,
                              absMag: row.sy_vmag - 5*Math.log10(row.sy_dist/10)})
   }
    else if (row.st_teff > 6000 && row.st_teff < 7500){

        transformedArray.push( {st_teff: +row.st_teff, 
                              sy_vmag: +row.sy_vmag, 
                              pl_orbsmax: +row.pl_orbsmax,
                                sy_dist: +row.sy_dist,
                              spectClass: "F", 
                              bolcon: -0.15,
                              absMag: row.sy_vmag - 5*Math.log10(row.sy_dist/10)})
   }
    else if (row.st_teff > 7500 && row.st_teff < 10000){

        transformedArray.push( {st_teff: +row.st_teff, 
                              sy_vmag: +row.sy_vmag, 
                              pl_orbsmax: +row.pl_orbsmax, 
                                sy_dist: +row.sy_dist,
                              spectClass: "A", 
                              bolcon: -0.2,
                               absMag: row.sy_vmag - 5*Math.log10(row.sy_dist/10)})
   }
      else if (row.st_teff > 10000 && row.st_teff < 25000){

        transformedArray.push( {st_teff: +row.st_teff, 
                              sy_vmag: +row.sy_vmag, 
                              pl_orbsmax: +row.pl_orbsmax,
                                sy_dist: +row.sy_dist,
                              spectClass: "B", 
                              bolcon: -2.0,
                              absMag: row.sy_vmag - 5*Math.log10(row.sy_dist/10)})
   }
    else{
       transformedArray.push( {st_teff: 0, 
                              sy_vmag: 0, 
                             pl_orbsmax: 0,
                               sy_dist: 0,
                              spectClass: 0, 
                              bolcon: 0,
                               absMag: 0})
    }

  }  

  return transformedArray;
}
Insert cell
Added in base
getBolMag = {

  const transformedArray = [];

  for (const row of getSpectBolconAbsMagArray) {
    // const transformedRow = {};
    // for (const column of columnsToKeep) {
    //   transformedRow[column] = row[column];
    // }    

    if(row.st_teff < 3500){
      //  transformedArray.push(Object.assign({}, transformedRow, {bolcon: -2.0}));

      transformedArray.push( {st_teff: +row.st_teff, 
                              sy_vmag: +row.sy_vmag, 
                              pl_orbsmax: +row.sy_dist, 
                              spectClass: +row.spectClass,
                              sy_dist: +row.sy_dist,
                              bolcon: +row.bolcon, 
                              absMag: +row.absMag,
                             bolconMag: row.absMag + row.bolcon})
    }
    else if (row.st_steff > 3500 && row.st_teff < 5000){

        transformedArray.push( {st_teff: +row.st_teff, 
                              sy_vmag: +row.sy_vmag, 
                              pl_orbsmax: +row.pl_orbsmax, 
                              spectClass: +row.spectClass,
                                sy_dist: +row.sy_dist,
                              bolcon: +row.bolcon, 
                              absMag: +row.absMag,
                             bolconMag: row.absMag + row.bolcon})

    }
    else if (row.st_teff > 5000 && row.st_teff < 6000){

         transformedArray.push( {st_teff: +row.st_teff, 
                              sy_vmag: +row.sy_vmag, 
                              pl_orbsmax: +row.pl_orbsmax, 
                              spectClass: +row.spectClass,
                                 sy_dist: +row.sy_dist,
                              bolcon: +row.bolcon, 
                              absMag: +row.absMag,
                             bolconMag: row.absMag + row.bolcon})
   }
    else if (row.st_teff > 6000 && row.st_teff < 7500){

        transformedArray.push( {st_teff: +row.st_teff, 
                              sy_vmag: +row.sy_vmag, 
                              pl_orbsmax: +row.pl_orbsmax, 
                              spectClass: +row.spectClass,
                                sy_dist: +row.sy_dist,
                              bolcon: +row.bolcon, 
                              absMag: +row.absMag,
                             bolconMag: row.absMag + row.bolcon})
   }
    else if (row.st_teff > 7500 && row.st_teff < 10000){

         transformedArray.push( {st_teff: +row.st_teff, 
                              sy_vmag: +row.sy_vmag, 
                              pl_orbsmax: +row.pl_orbsmax, 
                              spectClass: +row.spectClass,
                                 sy_dist: +row.sy_dist,
                              bolcon: +row.bolcon, 
                              absMag: +row.absMag,
                             bolconMag: row.absMag + row.bolcon})
   }
      else if (row.st_teff > 10000 && row.st_teff < 25000){

         transformedArray.push( {st_teff: +row.st_teff, 
                              sy_vmag: +row.sy_vmag, 
                              pl_orbsmax: +row.pl_orbsmax, 
                              spectClass: +row.spectClass,
                                 sy_dist: +row.sy_dist,
                              bolcon: +row.bolcon, 
                              absMag: +row.absMag,
                             bolconMag: row.absMag + row.bolcon})
   }
    else{
       transformedArray.push( {st_teff: 0, 
                              sy_vmag: 0, 
                              pl_orbsmax: 0, 
                              spectClass: 0,
                               sy_dist: 0,
                              bolcon: 0,
                              bolconMag: 0})
    }

  }  

  return transformedArray;

}
Insert cell
Added in base
getAbsLum = {

const transformedArray = [];

  for (const row of getBolMag) {
    // const transformedRow = {};
    // for (const column of columnsToKeep) {
    //   transformedRow[column] = row[column];
    // }    

    if(row.st_teff < 3500){
      //  transformedArray.push(Object.assign({}, transformedRow, {bolcon: -2.0}));

      transformedArray.push( {st_teff: +row.st_teff, 
                              sy_vmag: +row.sy_vmag, 
                              pl_orbsmax: +row.pl_orbsmax, 
                              spectClass: +row.spectClass,
                              sy_dist: +row.sy_dist,
                              bolcon: +row.bolcon, 
                              absMag: +row.absMag,
                             bolconMag: row.absMag + row.bolcon,
                              absLum: Math.pow(10, ((row.bolconMag - 4.72)/-2.5)) })
    }
    else if (row.st_steff > 3500 && row.st_teff < 5000){

        transformedArray.push( {st_teff: +row.st_teff, 
                              sy_vmag: +row.sy_vmag, 
                              pl_orbsmax: +row.pl_orbsmax, 
                              spectClass: +row.spectClass, 
                                sy_dist: +row.sy_dist,
                              bolcon: +row.bolcon, 
                              absMag: +row.absMag,
                             bolconMag: row.absMag + row.bolconMag,
                                 absLum: Math.pow(10, ((row.bolconMag - 4.72)/-2.5))
                             })

    }
    else if (row.st_teff > 5000 && row.st_teff < 6000){

         transformedArray.push( {st_teff: +row.st_teff, 
                              sy_vmag: +row.sy_vmag, 
                              pl_orbsmax: +row.pl_orbsmax, 
                              spectClass: +row.spectClass, 
                                 sy_dist: +row.sy_dist,
                              bolcon: +row.bolcon, 
                              absMag: +row.absMag,
                             bolconMag: row.absMag + row.bolcon,
                               absLum: Math.pow(10, ((row.bolconMag - 4.72)/-2.5))})
   }
    else if (row.st_teff > 6000 && row.st_teff < 7500){

        transformedArray.push( {st_teff: +row.st_teff, 
                              sy_vmag: +row.sy_vmag, 
                              pl_orbsmax: +row.pl_orbsmax, 
                              spectClass: +row.spectClass, 
                                sy_dist: +row.sy_dist,
                              bolcon: +row.bolcon, 
                              absMag: +row.absMag,
                             bolconMag: row.absMag + row.bolcon,
                              absLum: Math.pow(10, ((row.bolconMag - 4.72)/-2.5))}) 
   }
    else if (row.st_teff > 7500 && row.st_teff < 10000){

         transformedArray.push( {st_teff: +row.st_teff, 
                              sy_vmag: +row.sy_vmag, 
                              pl_orbsmax: +row.pl_orbsmax, 
                              spectClass: +row.spectClass, 
                                 sy_dist: +row.sy_dist,
                              bolcon: +row.bolcon, 
                              absMag: +row.absMag,
                             bolconMag: row.absMag + row.bolcon})
   }
      else if (row.st_teff > 10000 && row.st_teff < 25000){

         transformedArray.push( {st_teff: +row.st_teff, 
                              sy_vmag: +row.sy_vmag, 
                              pl_orbsmax: +row.pl_orbsmax, 
                              spectClass: +row.spectClass, 
                              bolcon: +row.bolcon, 
                              absMag: +row.absMag,
                             bolconMag: row.absMag + row.bolcon,
                                  absLum: Math.pow(10, ((row.bolconMag - 4.72)/-2.5))})
   }
    else{
       transformedArray.push( {st_teff: 0, 
                              sy_vmag: 0, 
                             pl_orbsmax: 0, 
                              spectClass: 0, 
                               sy_dist: 0,
                              bolcon: 0,
                              bolconMag: 0})
    }

  }  

  return transformedArray;
}
Insert cell
Added in base
getPl_Flux = {
  const transformedArray = [];

  for (const row of getAbsLum) {
    // const transformedRow = {};
    // for (const column of columnsToKeep) {
    //   transformedRow[column] = row[column];
    // }    

    if(row.st_teff < 3500){
      //  transformedArray.push(Object.assign({}, transformedRow, {bolcon: -2.0}));

      transformedArray.push( {st_teff: +row.st_teff, 
                              sy_vmag: +row.sy_vmag, 
                              pl_orbsmax: +row.pl_orbsmax, 
                              spectClass: +row.spectClass, 
                              sy_dist: +row.sy_dist,
                              bolcon: +row.bolcon, 
                              absMag: +row.absMag,
                             bolconMag: row.absMag + row.bolcon,
                             absLum: Math.pow(10, ((row.bolconMag - 4.75)/-2.5)),
                             pl_flux: row.absLum/(Math.pow(2, row.pl_orbsmax))})
    }
    else if (row.st_steff > 3500 && row.st_teff < 5000){

        transformedArray.push( {st_teff: +row.st_teff, 
                              sy_vmag: +row.sy_vmag, 
                              pl_orbsmax: +row.pl_orbsmax, 
                              spectClass: +row.spectClass, 
                                sy_dist: +row.sy_dist,
                              bolcon: +row.bolcon, 
                              absMag: +row.absMag,
                             bolconMag: row.absMag + row.bolconMag,
                             pl_flux: row.absLum/(Math.pow(2, row.pl_orbsmax))})

    }
    else if (row.st_teff > 5000 && row.st_teff < 6000){

         transformedArray.push( {st_teff: +row.st_teff, 
                              sy_vmag: +row.sy_vmag, 
                             pl_orbsmax: +row.pl_orbsmax, 
                              spectClass: +row.spectClass, 
                                 sy_dist: +row.sy_dist,
                              bolcon: +row.bolcon, 
                              absMag: +row.absMag,
                             bolconMag: row.absMag + row.bolcon,
                               pl_flux: row.absLum/(Math.pow(2, row.pl_orbsmax))})
   }
    else if (row.st_teff > 6000 && row.st_teff < 7500){

        transformedArray.push( {st_teff: +row.st_teff, 
                              sy_vmag: +row.sy_vmag, 
                              pl_orbsmax: +row.pl_orbsmax, 
                              spectClass: +row.spectClass, 
                                sy_dist: +row.sy_dist,
                              bolcon: +row.bolcon, 
                              absMag: +row.absMag,
                             bolconMag: row.absMag + row.bolcon,
                                pl_flux: row.absLum/(Math.pow(2, row.pl_orbsmax))})
   }
    else if (row.st_teff > 7500 && row.st_teff < 10000){

         transformedArray.push( {st_teff: +row.st_teff, 
                              sy_vmag: +row.sy_vmag, 
                              pl_orbsmax: +row.pl_orbsmax, 
                              spectClass: +row.spectClass, 
                                 sy_dist: +row.sy_dist,
                              bolcon: +row.bolcon, 
                              absMag: +row.absMag,
                             bolconMag: row.absMag + row.bolcon,
                              pl_flux: row.absLum/(Math.pow(2, row.pl_orbsmax))})
   }
      else if (row.st_teff > 10000 && row.st_teff < 25000){

         transformedArray.push( {st_teff: +row.st_teff, 
                              sy_vmag: +row.sy_vmag, 
                              pl_orbsmax: +row.pl_orbsmax, 
                              spectClass: +row.spectClass,
                                 sy_dist: +row.sy_dist,
                              bolcon: +row.bolcon, 
                              absMag: +row.absMag,
                             bolconMag: row.absMag + row.bolcon,
                            pl_flux: row.absLum/(Math.pow(2, row.pl_orbsmax))})
   }
    else{
       transformedArray.push( {st_teff: 0, 
                              sy_vmag: 0, 
                              pl_orbsmax:0, 
                              spectClass: 0, 
                               sy_dist: 0,
                              bolcon: 0,
                              bolconMag: 0})
    }

  }  

  return transformedArray;
  
}
Insert cell
Changed in base
-
newDataPlanetas = dataPlanetas.filter(d => d.st_teff > 0)
+
newDataPlanetas = dataPlanetas.filter(d => d.st_teff > 0)
Insert cell
Removed in base
starTempMagDist = getArray(newDataPlanetas)
Insert cell
Removed in base
starTempMagDist
Insert cell
Removed in base
function setSpecTypes(starTempMagDist){

}
Insert cell
Removed in base
function setSpecTypes1(bolCons, spectClass)
{
var bolCons;
var spectClass;

for (let index = 0; index < temperature; ++index) {
if(temperature < 3500){
bolCons = -2.0
spectClass = 'M'
}
else if (temperature > 3500 && temperature < 5000){
bolCons = -0.8
spectClass = 'K'
}
else if (temperature > 5000 && temperature < 6000){
bolCons = -0.4
spectClass = 'G'
}
else if (temperature > 6000 && temperature < 7500){
bolCons = -0.15
spectClass = 'F'
}
else if (temperature > 7500 && temperature < 10000){
bolCons = -0.3
spectClass = 'A'
}
else if (temperature > 10000 && temperature < 25000){
bolCons = -2.0
spectClass = 'B'
}
else if (temperature >25000)
bolCons = null

}

return bolCons;
}
Insert cell
Removed in base
function lumCalc(absLum) {
var absMag = dataPlanetas1.sy_vmag - 5 * Math.log10 (dataPlanetas1.sy_distance/10);
var bolMag = absMag + setSpecTypes
var absLum = Math.pow(10, ((bolMag - 4.75)/-2.5));

return absLum;
}
Insert cell
Removed in base
function pl_flux (plan_flux) {
var plan_flux;
plan_flux = lumCalc/Math.pow(dataPlanetas1.sy_dist, 2)
return plan_flux;
}
Insert cell
starTemp = dataPlanetas.filter (item => {

return item[dataPlanetas.st_teff]

})
Insert cell
Removed in base
minimoData_x = d3.min(dataPlanetas, d => d.dec)

Insert cell
Removed in base
maxData_x = d3.max(dataPlanetas, d => d.dec)
Insert cell
Removed in base
minData_y = d3.min(dataPlanetas, d => d.ra)

Insert cell
Removed in base
maxData_y = d3.max(dataPlanetas, d => d.ra)
Insert cell
newDATA = dataPlanetas
Insert cell
file = FileAttachment("dataPlanetas.csv")
Insert cell
Changed in base
-
dataPlanetas1 = dataPlanetas.filter (d => d.pl_orbsmax >= 0.2)
+
dataPlanetas1 = dataPlanetas.filter (d => d.st_teff)
Insert cell
file.text()
Insert cell
dataPlanetas = d3.csvParse(await file.text())
Insert cell
Added in target
## Cobus's example
Insert cell
Added in target
dataPlanetas.map(d=> ({...d, ...setSpecTypes2(+d.st_teff)}))
Insert cell
Added in target
function setSpecTypes2(temperature) {
let bolCons, spectClass;
if (temperature < 3500) {
bolCons = -2.0;
spectClass = "M";
} else if (temperature > 3500 && temperature < 5000) {
bolCons = -0.8;
spectClass = "K";
} else if (temperature > 5000 && temperature < 6000) {
bolCons = -0.4;
spectClass = "G";
} else if (temperature > 6000 && temperature < 7500) {
bolCons = -0.15;
spectClass = "F";
} else if (temperature > 7500 && temperature < 10000) {
bolCons = -0.3;
spectClass = "A";
} else if (temperature > 10000 && temperature < 25000) {
bolCons = -2.0;
spectClass = "B";
} else if (temperature > 25000) bolCons = null;

return { bolCons, spectClass };
}
Insert cell