Cree un EntityStore de meteoros de bolas de fuego
Wolfram Knowledgebase contiene una gran cantidad de información que abarca diversas áreas. Además cuenta con un potente conjunto de funcionalidades para representar, acceder y realizar cálculos con este conocimiento. Ahora es posible (y muy fácil) para usuarios crear sus propias colecciones de datos y trabajar con ellas como si fueran datos incorporados. Aquí se ilustra el proceso de creación y uso de un almacén de entidades para meteoros de bolas de fuego (conocidos como bólidos) basados en fuentes de datos existentes.
Use Import para descargar un conjunto de datos de bólidos mantenido por el Jet Propulsion Laboratory.
![Click for copyable input](assets.es/create-a-fireball-meteor-entitystore/In_100.png)
(rawdata =
Import["http://neo.jpl.nasa.gov/fireballs/",
"FullData"])[[3, 9, 2, 12, 1, ;; 5]]
![](assets.es/create-a-fireball-meteor-entitystore/O_78.png)
Defina una función de utilidad para adjuntar unidades a datos crudos.
![Click for copyable input](assets.es/create-a-fireball-meteor-entitystore/In_101.png)
AddUnits[x_, u_: "Kilometers"/"Seconds"] :=
If[NumberQ[x], Quantity[Interpreter["Number"][x], u],
Missing["NotAvailable"]]
Extraiga las partes relevantes de los datos, agregue etiquetas apropiadas de Quantity y cree el almacén de entidades.
![Click for copyable input](assets.es/create-a-fireball-meteor-entitystore/In_105.png)
store = EntityStore["Bolide" -> <|
"Label" -> "bolide",
"LabelPlural" -> "bolides",
"Entities" -> entities,
"Properties" -> properties
|>]
![](assets.es/create-a-fireball-meteor-entitystore/O_79.png)
Registre el almacén para esta sesión.
![Click for copyable input](assets.es/create-a-fireball-meteor-entitystore/In_106.png)
PrependTo[$EntityStores, store];
Cree una "EntityAssociation" de posiciones y energías de bólidos.
![Click for copyable input](assets.es/create-a-fireball-meteor-entitystore/In_107.png)
ea = EntityValue["Bolide", {"Position", "TotalRadiatedEnergy"},
"EntityAssociation"];
Cree un gráfico geográfico de visibilidades de bólidos basados en sus alturas y posiciones en el cielo.
![Click for copyable input](assets.es/create-a-fireball-meteor-entitystore/In_108.png)
GeoGraphics[{GeoVisibleRegion[#] & @@@ Values[ea]}]
![](assets.es/create-a-fireball-meteor-entitystore/O_80.png)
Extraiga energías de bólidos en QuantityArray.
![Click for copyable input](assets.es/create-a-fireball-meteor-entitystore/In_109.png)
energies = QuantityArray[Values[ea][[All, -1]]]
![](assets.es/create-a-fireball-meteor-entitystore/O_81.png)
Visualice energías de bólidos usando un histograma.
![Click for copyable input](assets.es/create-a-fireball-meteor-entitystore/In_110.png)
Histogram[energies, "Log", AxesLabel -> {"energy (J)", "count"}]
![](assets.es/create-a-fireball-meteor-entitystore/O_82.png)
Aplique una función de escala para dar una imagen cualitativa del brillo de la bola de fuego.
![Click for copyable input](assets.es/create-a-fireball-meteor-entitystore/In_112.png)
GeoGraphics[{Red, GeoDisk[#1, scale[#2]] & @@@ Values[ea]}]
![](assets.es/create-a-fireball-meteor-entitystore/O_83.png)