MATLAB驱动和英国煤炭公司
前几天,我收到了朋友乔斯的一封电子邮件。
他真体贴!在最近的一次会议后,我们讨论了英国煤炭消耗量的显著下降。乔斯从一个政府网站并通过MATLAB Drive与我分享。请注意,这里显示的所有数字都与用于发电的能源有关(而不是,比如说,热量或运输)。
因为我们都使用MATLAB驱动器, Jos可以把他的代码和数据留在原位,只发出邀请。一旦我接受了它,我就可以在同一个文件夹中工作,从而避免了大量带附件的来回邮件。
我接受了邀请,看到了一个文件夹,里面有一个电子表格、两个导入程序和一个名为runme.m的文件。
下面是该乔斯文件runme.m。
当我运行它时,这就是结果。
果然,现在煤炭的使用量接近于零!但由于Jos邀请我与这些共享数据合作,我想我应该多填写一些分析。让我们再深入挖掘一下。
第一步是将他的代码移动到一个直播脚本中(稍后,我会拍摄此实时脚本并将其直接发布到WordPress,因此您可以有效地查看我创建的实时脚本)。
接下来,我装的数据,并清理表多一点。
文件名=“UK-Energy-fuels.xls”;
数据= IMPORTDATA(文件名);
头= importheaders(文件名);
%清理一些头
标题(5)=“水电”;
头(7)=“Wind_Onshore”;
头(8)=“Wind_Offshore”;
头(结束)=“总”;
%在数据缺失值(NaN的应该是零)
数据(isnan(数据))= 0;
t = array2table(数据”,'variablenames',标头);
%扔掉一些不使用的列
T(:,[9 12 13 14])= [];
让我们切换到一个时间表。时间表是真棒。
t.Time =日期时间(1998:2019,1,1)';
T = T(:,[端1:(端-1)]);
t = table2timetable (t)
快速堆叠情节是一种找到方向的有趣方式。堆叠的情节的好处是它们知道所有的时间表,所以你不必担心太多。只要一行代码,没有标签和限制。
stackkedplot (t(:,[1 2 3 4 5 6 9 10]))
由于Y尺度都不同,堆叠的情节是对趋势的最有用。请注意,风能和太阳能是稳步向上移动,而水电并没有太大的变化。还有的煤尽自己玩消失。
为了理解这些能源的相对贡献,我们画一个面积图。
表使这个那么愉快!
h =区域(t.time,[t.coal t.oil t.gas t.nuclear t.hydro t.wind t.solar t.bioenergy]);
有趣的事实:你现在可以设置颜色在MATLAB绘图与css风格的十六进制颜色指定。让我们为图表找一些合适的颜色。我用这个工具选择了这些颜色:https://www.w3schools.com/colors/colors_picker.asp。
源= [......
“#4d4d4d”,“煤炭”;
“#663300”,“油”;
“#999966”,“气体”;
“# aa80ff”,“核”;
“#0066FF”,“水电”;
“#66ccff”,“风”;
“# ffff66”,“太阳的”;
“# 33 cc33”,“生物能源”];
为i = 1:长度(h)
H(I).FaceColor =源(I,1);
结束
图例(源(:,2),......
“位置”,“东北方”)
Xlabel(“日期”)
ylabel(“能源(亿千瓦时)”)
网格在
这是乔斯的煤炭图,但与总量相对应,所以我们看的是能源份额的百分比。
图(t.Time,100 * t.Coal。/ t.Total,“邻”,“行宽”3,3)
网格在
Xlabel(“日期”)
ylabel(“百分比”)
标题(“英国煤炭能源的比例”)
在本世纪初,谁能预测到这种结果呢?英国是第一个大量使用煤炭作为工业动力的国家,也可能是第一个放弃煤炭的国家,这一事实有一种诗意的对称性。
还有一个有趣的故事,一边对这里陆上和海上风电的赛马比赛。英国一直在海上风力发电的先驱。你可能会说他们是风起云涌sealanes的沙特阿拉伯。
情节(t.Time,[t.Wind_Onshore t.Wind_Offshore]“邻”,“行宽”3,3)
xlim (datetime ((2012 2020), 1,1))
传奇({“陆上”,“离岸”},'地点',“最佳”)
Xlabel(“日期”)
ylabel(“能源(亿千瓦时)”)
网格在
从本世纪初静止起步,现在风产生了英国20%的电力。而两种口味,在岸和离岸之间,如2019年这是一个热死了!鉴于趋势,你必须把你的钱在海上风力发电。还有很多更比海洋岛。少皱位的方式获得。
当我做这些情节,我忍不住通知,在英国能源消耗的总量收缩时间超过。这是所有的好。毕竟,它更容易,当你在第一个地方需要更少的整体能源使用更少的煤。
情节(t。时间,t.Total,“行宽”3,3)
网格在
Xlabel(“日期”)
ylabel(“能源(亿千瓦时)”)
标题(“英国的总耗电量”)
由于我是一个投机的人,由于MATLAB是曲线拟合的大师,我很自然地在想:假设这种下降趋势持续下去?然后什么?
tm =年(t.Time(8:结束);
dt = t.Total(8:结束);
% p为与数据线性拟合的多项式方程
p = polyfit (tm, dt, 1);
%的Ti是我们相交的x轴
TI = -p(2)/ P(1);
T0 = 2005;
TF = [T 0 TI];
DF = polyval(P,TF);
持有在
情节(datetime(圆(tf), 1,1), df,“邻”,“颜色”,“红色的”)
持有离开
XLIM(DateTime([2000 2100],1,1))
Xlabel(“日期”)
ylabel(“能源(亿千瓦时)”)
根据目前的趋势,我们可以自信地断言,英国将不再需要任何形式的权力由2096。
所以感谢这个数据,JOS!在Matlab Drive上共享数据和代码使这项调查变得简单。而现在我已经完成了我的位置,我会看到什么JOS要添加了什么。我很奇怪地发现,在80年代,他将如何管理没有电力。
|
评论
要发表评论,请点击这里登录您的MathWorks帐户或创建新的。