留言板 留言板

10
|
21306视图
|
5个回复
|
13个总喜欢次数
查看组。。。
分享
分享此帖子:

伊利诺伊州香槟市1973-2017年的温度-可视化

通常在浏览时数据很漂亮subreddit我看了看内容,心里想,“用Wolfram Language很容易做到这一点”,这时我立刻忘记了我有这个想法,继续下一篇文章(我可能也有同样的想法)。

今天我偶然发现一根柱子用户通过一个漂亮的图形直观地显示了1973年至2017年布鲁克林每小时的温度。这一次,我决定按照我的“用沃尔夫拉姆语言很容易做到这一点”的想法行事,并付诸行动。

Wolfram语言天气数据功能使收集温度变得轻而易举(天气双关语),我能够用一行代码将所有数据导入Mathematica:

WeatherData[实体[“城市”,{“香槟”,“伊利诺伊”,“美国”}],“温度”,{{1970,1,1},今天,“天”}]

之后,只需将度数转换为华氏度,正确选择颜色(我非常喜欢原始图形中的颜色,所以我尝试模仿它们),然后创建和格式化行(单击以缩放)。

香槟天气

我真的不想从原创者那里拿走任何东西(这里是一个GitHub链接他的R源代码),由于他做得更仔细(他负责闰年,所以他的时间实际上是排成一行的,等等……),我只是想证明在Wolfram语言中完成类似的任务是多么容易。

这里是笔记本(也附在附件中)我曾经创建过这个(在云中,有些东西与我的桌面上的排列不太一样,但最终结果是一样的)。要为另一个城市制作相同的图表,只需在代码的第一行编辑城市实体,也许还需要编辑缩放比例,以更好地适应该地区的最高和最低温度。


代码

champagnTemp=天气数据[实体[“城市”,{“香槟”,“伊利诺伊”,“美国”}],“温度”,{{1970,1,1},今天,“天”}];datePath=champaignTemp[“datePath”]/。{x_,y_Quantity}:>{x,UnitConvert[y,“华氏度”]};{min,max}=MinMax[datePath[[All,2]]]

在此处输入图像描述

平均值=平均@datePath[[全部,2]

在此处输入图像描述

$blendingColors={RGB颜色[1/6,0,2/3],RGB颜色[2/3,1/4,5/12],RGBColor[1,9/10,0]};图形[表格[{Blend[$blendingColors,x],磁盘[{8x,0}]},{x,0,1/8}]](*快速查看出血结果的图片*)

在此处输入图像描述

cf[x_]:=混合[$blendingColors,x]$legend=BarLegend[{cf[#]&,{0,1}},“刻度”->{0,.5,1},”刻度标签“->(样式[#,FontFamily->“Avenir”]&/@{数量[-10,“华氏度”],数量[45,“华华氏度“],数量[100,“华氏度”]}),LegendLabel->Style[“Temperature”,FontFamily->“Avenir”]];scaledDatePath=日期路径/。{x,y}:>{x,重缩放[y,{数量[-10,“华氏度”],数量[100,“华氏度”]}]};sortedScaledByYear=分组依据[scaledDatePath,#[[1,1,1]]&];表[imgData[i]=表[#,4]和/@(混合[$blendingColors,#]和/@sortedScaledByYear[i][[All,2]])//转座,{i,sortedScaledByYear//键}];imgData[2017]=Transpose[加入[imgData[2017]//Transpose,表[{白色,白色,白色},365-长度@最后@sortedScaledByYear]]];grid=网格[加入[{{Null,列[{Style[“伊利诺伊州香槟市的日温度”,FontFamily->“Helvetica”,18,粗体],样式[“1973-2017”,FontFamily->“Avenir”,13]}],SpanFromLeft}},表格[{Style[i,FontFamily->“Avenir”],图像[imgData[i],图像大小->1200],SpanFromLeft},{i,sortedScaledByYear//键}],{{Null,Style[“January”,FontFamily->“Avenir”,13],Style[“December”,Font Family->“Avenil”,13]}}]间距->{.5,0.1},对齐->{{左、左、右}、上}];final=带边框[Labeled[grid,$legend,Right],ImageMargins->10,FrameStyle->None]SetDirectory[笔记本目录[]];finalImg=光栅化[最终,图像分辨率->200]导出[“ChampaignWeather.png”,finalImg]
附件:
发布者:凯尔·马丁
5个回复
排序依据:

亲爱的Kyle,

这是一个非常好的温度数据表示,感谢分享!

我想知道,在全球变暖的背景下,这张照片是否反映了一些长期趋势。显然情况并非如此,一些数据分析表明了原因:香槟似乎经历了降温而非变暖的过程,这与所有趋势背道而驰。

在此处输入图像描述

所以至少在香槟海平面不会上升,幸运的WR!

随附简短代码,可以轻松更改城市列表。

顺颂商祺——亨里克

附件:

我不太愿意使用我创建的可视化类型来观察长期效果。我发现很难从视觉上识别任何长期趋势,比如在这种粒度下变暖或变冷。

你分享的工具很酷!我将把它存储在我的“有用的笔记本”文件夹中,我认为我很有可能在将来的某个时候再引用它(无论是内容还是方法)。

干杯。

发布人:凯尔·马丁

在此处输入图像描述-恭喜你!此帖子现在是员工挑选以徽章为标志您的个人资料! 谢谢你,继续加油!

发布人:仲裁小组

亲爱的Kyle,

这是一份不错的工作。祝贺 你!

我正在研究使用ANN进行每日气温预测,这种可视化如何帮助我们获得更好的预测?换句话说,工程师如何使用这种可视化?

谨致问候,

戈尔巴尼

不幸的是,我在气象学方面没有太多背景,所以我不确定能给你什么好建议。不过祝你好运。

发布人:凯尔·马丁
对此讨论的答复
可以使用标记语法.
回复预览
附件
删除
放弃

组摘要 组摘要