一、选题的背景介绍(15分)
可持续发展是当今社会发展的重要课题,开发利用清洁能源,减低化石能源消耗,是平衡经济增长、社会发展和节能减排之间矛盾和制约的重要途径,从社会方面分析,地球的化石能源有限,再加上其本身的不可再生性,基本是用一点少一点。从经济方面来看,开发提纯化石能源的过程需要耗费巨量资金,而风力、水力发电耗费资金与其对比不值一提。从技术方面来看,我国在新能源研究上已经初步取得较大成果,已经出现了一批新能源汽车以供使用。因此,为了让人们更好的意识到化石能源的稀缺,本报告特选择今年10月以来的各种化石能源产品产量及增速为数据源,以可视化图表的形式让人们直观的看到每年能源的产出,旨在呼吁人们减少化石等不可再生能源的使用,大力开发可再生能源,如风力、水力发电、乙醇能源等。
2.本数据集包含原煤(万吨)、原油(万吨)、天然气(亿立方米)、 煤层气(亿立方米)、液化天然气(万吨)、原油加工量(万吨)、汽油(万吨)、煤油(万吨)、柴油(万吨)、燃料油(万吨)、石脑油(万吨)、液化石油气(万吨)、石油焦(万吨)、石油沥青(万吨)、焦炭(万吨)、发电量(亿千瓦时)、火力发电量(亿千瓦时)、水力发电量(亿千瓦时)、核能发电量(亿千瓦时)、风力发电量(亿千瓦时)、煤气(亿立方米)等21个指标,以及本月(10月)产量、1-10月总产量、当月(10月)增速和累计(平均)增速四个属性。其中增速计算公式为(本期产量-去年同期产量)/去年同期产量,因此存在负值出现。
3.数据可视化:
图1.10月原油加工各成品比例及转化损耗
将10月份原油产量减去各转化产品产量得到转化损耗604万吨,将数据带入饼图可知,转化损耗高达10.3%,比大部分产品所占比例都高,这表明我国原油转化率任有极大的上升空间。其次,据图可知,由原油转化的各成品中,柴油和汽油所占比例最高,煤油和石油焦所占比例最少。
图2.10月发电各模式产量占比饼图
将总发电量减去四大主要发电模式发电量,得到其他发电190亿千瓦时,将数据带入饼图可知,其他发电占比2.9%,占比最少,而占总发电量比例最高的火力发电占比67.4%,第二大发电方式为水力发电,占比15.0%,这表明目前我国主要发电方式为火力发电,其次为水力发电。
图3.各指标10月产量占1-10月总产量的比例
将各指标10月产量除上1-10月总产量值得到该月产量占比,且易知每月平均产量占比为10%。进而由此绘制条形图如上,据图可知,10月份原油、液化天热气和天然气占比均超过10%,这三种均为目前常用不可再生能源,本月超出平均产量,下月则应适量减低开采量,以实现可持续发展战略。
图4.各能源指标产量增速金字塔
将各能源指标10月份和1-10月份累计平均产量的增长速度数据录入金字塔模型中,得到如上图。据图可知,10月份煤气、焦炭、液化天然气和天然气的产量增速明显高于累计平均增速,这表明当月以上能源指标需求量急剧升高,如果不加以节制,从长远来看将造成不可逆转的结果。
图5.原油加工各成品指标增速
各指标产量增速=(本期产量-去年同期产量)/去年同期产量,根据产量增速公式可知,当增速为负值时,表明本期产量与去年同期产量相比有所下降。因此,据上图易知,汽油、煤油、柴油以及石油沥青等原油成品的产量增速低于零线,即为负值,这表明这四种原油成品与去年相比,产量开始下降,换言之也可表明我国正在有意识地控制不可再生能源指标的开采,而相对的,柴油产量与去年相比大幅上升,由于柴油属于可再生能源,再生速度较快,因此在很大程度上可以代替不可再生能源的使用。
图6.2022年1-10月原油成品各指标累计产量(万吨)
将1-10月原油加工各成品累计产量数据绘制成一幅雷达图,据图分析可知,今年10个月以来以柴油和汽油产量为最,均超过了10000万吨的产量,这两种能源均为汽车等交通工具所需的必备能源,应用广泛,但从长远来看却有害无益,这是对原油的极大损耗,基于原油属于不可再生资源,用一点少一点,因此,我国因该逐步减少原油的消耗,大力开发新能源、可再生能源的使用,这是可持续发展
的重要举措。
图7.各能源指标产量2022年1-10月累计(平均)增速
由于各能源累计增速数据过多,使用柱形图不太美观,因此改用棉棒图绘制,从上图可知,风力发电产量的平均增速最大,而焦炭产量的平均增速最少,从这里可以看出虽然我国使用焦炭等不可再生资源的产量较高,但我国本着可持续发展的原则,每年都在控制着不可再生能源产出的增速,使其尽可能地低甚至为负值,而大力发展可再生能源如风力发电等地产出,使其每年地增速保持在一个尽可能高的位置。
三、总结(15分)
通过前面各个图表的可视化分析,我们可以非常直观的了解到我国每年化石能源的产量居高不下,尤其以原煤、柴油、汽油、焦炭为主,这些能源都是我们生活中的常规能源,基本普及到家家户户,而在产量增速方面,除了部分如汽油、煤油、石油沥青等能源为负值以外,其他均为正值,这表明我国在能源产出方面正逐步上升,这些无一不在加剧着我国化石能源储备的消耗,而唯一值得安慰的是我国在风力、水力、火力、核能发电方面的累计增速为正值,且有逐步上升的趋势,而化石能源增速有逐年下降的趋势。因此,为了可持续发展战略的有效实施,我们应该逐步减少化石能源的使用,逐步实现以新能源代替化石能源,开发研究更多可靠且实用的新可再生能源,慢慢消除对化石能源的依赖。
四、附录(10分)
图一源代码:
import matplotlib.pyplot as plt
import numpy as np
import matplotlib.cm as cm
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus'] = False
kinds = ['汽油','煤油','柴油','燃料油',
'石脑油','液化油','石油焦','石油沥青','转化损耗']
data = [1236.2/5861.6,243.5/5861.6,1882.9/5861.6,392/5861.6,
507/5861.6,412/5861.6,261.9/5861.6,322.1/5861.6,604/5861.6]
colors = cm.GnBu(np.arange(len(data)) / len(data))
position = [0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1]
plt.pie(data,labels=kinds,autopct='%3.1f%%',shadow=True,
explode = position,startangle=90,colors = colors)
plt.title("10月原油加工各成品比例及转化损耗")
plt.legend(loc='lower center',
title = "Pie Learning",
fontsize = 10,
bbox_to_anchor=(1, 0.5, 0.4, 1))
plt.show()
图二源代码:
import matplotlib.pyplot as plt
import numpy as np
import matplotlib.cm as cm
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus'] = False
kinds = ['火力发电','水力发电','核能发电','风力发电','其他发电']
data = [4453.1/6610,993.5/6610,360.1/6610,613.3/6610,190/6610]
colors = cm.OrRd(np.arange(len(data)) / len(data))
position = [0.1,0.1,0.1,0.1,0.1]
plt.pie(data,labels=kinds,autopct='%3.1f%%',shadow=True,
explode = position,startangle=90,colors = colors)
plt.title("10月发电各模式产量占比饼图")
plt.legend(loc='lower center',
title = "Pie Learning",
fontsize = 10,
bbox_to_anchor=(1, 0.5, 0.4, 1))
plt.show()
图三源代码:
import numpy as np
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus'] = False
def autolabel(ax,rects):
for rect in rects:
width = rect.get_width()
ax.text(width+2,rect.get_y(),s='{}'.format(width),
ha='center',va='bottom')
y = np.arange(8)
x = np.array([10.04,10.07,10.35,10.12,11.31,10.54,9.5,9.93])
labels = np.array(['原煤','原油','天然气','煤层气','液化天然气','原油','发电量','煤气'])
fig,ax1 = plt.subplots(1,1)
barh1 = ax1.barh(y,x,height=0.5,tick_label=labels,color='orange')
ax1.set_xlabel('10月产量占1-10月总产量比例(%)')
ax1.set_title('各指标10月产量占1-10月总产量的比例')
ax1.set_xlim(0,x.max()+5)
ax1.axvline(10,ls='--',linewidth=1.0,label='平均产量',color='red')
ax1.legend(loc='best')
plt.grid(b=True,axis='x',linewidth=0.5)
autolabel(ax1,barh1)
plt.show()
图四源代码:
import numpy as np
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus'] = False
y = np.arange(1,9)
labels = ['原煤','原油','天然气','煤层气','液化天然气','焦炭','发电量','煤气']
x1 = [-1.2,-2.5,-12.3,-8.55,-18.95,-6.9,-1.3,-16.0]
x2 = [10,3,6,8.99,9.49,0.1,2.2,2.5]
fig,ax =plt.subplots(1,1)
ax.barh(y,x1,tick_label=labels,label='当月(10月)增速',color='red')
ax.barh(y,x2,tick_label=labels,label='累计(平均)增速',color='blue')
ax.set_ylabel("各指标产量")
ax.set_xticks([-20,-15,-10,-5,0,5,10,15,20])
ax.set_xticklabels([20,15,10,5,0,5,10,15,20])
ax.set_xlabel("各指标产量增速(%)")
ax.set_title("各能源指标产量增速金字塔")
plt.grid(b=True,axis='x',linewidth=0.5)
ax.legend(loc='best')
plt.show()
图五源代码:
import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus'] = False
x = np.arange(1,9)
y1 = [-4.9,-20.8,30.5,1.9,4.4,0.1,0.3,-32.5]
y2 = [-3.5,-32.2,-18.3,22,9.7,-2.1,-0.6,-32]
fig,ax = plt.subplots(1,1)
ax.axhline(0,ls='--',linewidth=1.0,color='red')
plt.annotate("零线",
xy = (5,0),
xytext = (4.5,-12),
arrowprops = dict(arrowstyle="->",color = 'red'),
color = "red")
ax.plot(x,y1,label = '当月(10月)增速')
ax.plot(x,y2,label = '累计(平均)增速')
ax.set_xticklabels(['','汽油','煤油','柴油','燃料油',
'石脑油','液化石油气','石油焦','石油沥青'])
ax.legend(loc='best')
plt.ylim(-35,35)
plt.xlabel("各原油成品能源指标")
plt.ylabel("产量增速(%)")
plt.title("原油加工各成品指标增速")
plt.grid(b=True,axis='x',linewidth=0.5)
sns.despine()
plt.show()
图六源代码:
import matplotlib.pyplot as plt
import numpy as np
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
results = [{"汽油":12193.1 , "煤油": 2381.7, "柴油": 15268.6,"燃料油":4283.3,
"石脑油":4722.8,"液化石油气":4107.1,"石油焦":2468.7,
"石油沥青":3228.2}]
data_length = len(results[0])
angles = np.linspace(0, 2*np.pi, data_length, endpoint=False)
labels = [key for key in results[0].keys()]
score = [[v for v in result.values()] for result in results]
score_a = np.concatenate((score[0], [score[0][0]]))
angles = np.concatenate((angles, [angles[0]]))
labels = np.concatenate((labels, [labels[0]]))
fig = plt.figure(figsize=(8, 6), dpi=100)
ax = plt.subplot(111, polar=True)
ax.plot(angles, score_a, color="springgreen")
ax.fill(angles, score_a, alpha=0.25,color = 'g')
ax.set_thetagrids(angles*180/np.pi, labels)
ax.set_theta_zero_location('N')
ax.set_rlim(0, 17000)
ax.set_rlabel_position(250)
ax.set_title("2022年1-10月原油成品各指标累计产量(万吨)")
plt.legend(["累计产量(万吨)"], loc='best')
plt.show()
图七源代码:
import matplotlib.pyplot as plt
import numpy as np
import seaborn as sns
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
x = np.arange(1,13)
y = np.array([10,3,6,8.99,9.49,0.1,2.2,2.5,0.8,2.2,1.2,12.4])
labels = np.array(['原煤','原油','天然气','煤层气','液化天然气',
'焦炭','发电量','煤气','火力发电','水力发电','核能发电','风力发电'])
fig = plt.figure(figsize = (10,6),dpi= 80 )
ax = fig.add_subplot(111)
markerline,stemlines,baseline = ax.stem(x,y,linefmt='--',
markerfmt = 'o',label='TestStem',use_line_collection=True)
plt.setp(stemlines,lw=1)
ax.set_title("各能源指标产量20年1-10月累计(平均)增速",fontdict={'size':18})
ax.set_ylabel("累计增速(%)")
ax.set_xlabel("各能源指标")
ax.set_xticks(x)
ax.set_xticklabels(labels,rotation=60)
ax.set_ylim([0,13])
for temp_x, temp_y in zip(x,y):
ax.text(temp_x,temp_y+0.5,s='{}'.format(temp_y),ha = 'center',
va = 'bottom',fontsize=14)
sns.despine()
plt.show()
标签:数据分析,10,plt,np,set,可视化,产量,ax From: https://www.cnblogs.com/6d53228779/p/17003768.html