创建火球流星雨实体库
Wolfram Knowledgebase 包含了覆盖广泛领域的大量信息,而且还拥有表现、访问和计算这些信息的强大功能. 现在,用户还可以(并更直接的)创建自定义的实体-属性集合,并用与内置数据相同方法进行使用. 在此,根据火球流星雨(即,火星流)现有数据来源,展示了创建并使用火球流星雨实体库的过程.
用 Import 来下载喷气推进实验室(JPL)维护的火星流数据集.
In[1]:=
(rawdata =
Import["http://neo.jpl.nasa.gov/fireballs/",
"FullData"])[[3, 9, 2, 12, 1, ;; 5]]
Out[1]=
定义效用函数在原始数据中附加单位.
In[2]:=
AddUnits[x_, u_: "Kilometers"/"Seconds"] :=
If[NumberQ[x], Quantity[Interpreter["Number"][x], u],
Missing["NotAvailable"]]
提取数据的相关部分,添加合适的 Quantity 标签并创建实体库.
显示完整的 Wolfram 语言输入
In[6]:=
store = EntityStore["Bolide" -> <|
"Label" -> "bolide",
"LabelPlural" -> "bolides",
"Entities" -> entities,
"Properties" -> properties
|>]
Out[6]=
注册该部分数据库.
In[7]:=
PrependTo[$EntityStores, store];
创建火星流位置和能量的 "EntityAssociation".
In[8]:=
ea = EntityValue["Bolide", {"Position", "TotalRadiatedEnergy"},
"EntityAssociation"];
根据火星流的高度和空中位置,创建火星流能见度的地理绘图.
In[9]:=
GeoGraphics[{GeoVisibleRegion[#] & @@@ Values[ea]}]
Out[9]=
将火星流能量提取至 QuantityArray.
In[10]:=
energies = QuantityArray[Values[ea][[All, -1]]]
Out[10]=
使用直方图可视化火星流能量.
In[11]:=
Histogram[energies, "Log", AxesLabel -> {"energy (J)", "count"}]
Out[11]=
使用尺度函数给出火流星亮度的定量图像.
显示完整的 Wolfram 语言输入
In[13]:=
GeoGraphics[{Red, GeoDisk[#1, scale[#2]] & @@@ Values[ea]}]
Out[13]=