作者:沈智强619 | 来源:互联网 | 2023-09-11 11:34
平常我们看到的物体一般是三维空间中的立体图形,今天跟大家一起来学习用Python绘制立体图形。一、导入绘图数据首先导入绘图所需的数据。importosimpor
平时我们看到的物体一般是三维空间的立体图形,今天和大家一起学习用Python画立体图形。
一、导入绘图数据
首先导入绘图所需的数据。
importosimportpandasaspdos.chdir (r ' f : (公众号(6.学习python ' ) )是存储数据的文件夹路径date=pd.read_csv (股票数据. csv )
前几行的数据如下。
二.绘制三维图
1绘制三维线形图
为了熟悉三维空间图形的作图原理,首先绘制5个点依次连接的三维线图,具体句子如下。
导入matplotlib.py plot as PLT #部署库from mpl _ toolkits.MP lot3dimportaxes 3d #部署库PLT.rcparams [ ' font.sans-seriries ]=解决中文显示问题PLT.rcparams [ ' axes.unicode _ MINUS ' ]=false #解决中文显示问题PLT.subplot(projection='3d ' ) #3d绘图空间x=[ 0,]
用双股数据绘制三维折线图
按年月分组,统计股票收盘价的平均值,将与年对应的标签设为x轴,将与月对应的标签设为y轴,将与收盘价对应的数值设为z轴,制作三维折线图。 具体措词如下。
date=date.set_index (日期) )将日期列设置为索引date.index=PD.to _ datetime (date.index ),并将索引设置为时间格式result=date[[ ().mean ) (按年和月对收盘价分组以获得平均值的PLT.subplot ) projection='3D ' ) 3d出图空间PLT.plot (result.index.codex ) PLT.xlabel ) )对应于年份标签) ) x轴上标签plt.ylabel ) )对应于月份标签) ) y轴上标签plt.title )描绘按年月收盘价变化趋势的三维图表) )标题PLT .
用三株式数据绘制三维散点图
按年月分组,统计收盘价平均、交换率平均、成交件数平均,分别作为x轴、y轴、z轴制作三维散点图。 具体措词如下。
result=date.group by ([ date.index.year, date.index.month] ).AgG ) val1=((收盘价)、(均值) )、val2=) )接线员' mean ' ) (ax=PLT.subplot (项目=' ) result['val3'](#散点图plt.xlabel ) (按年月统计终值平均) ) ) x轴为标签plt.ylabel ) (按年月统计交换率平均) ) ) y轴为标签plt.title ) )股票数据三维散点图)
用四只股票
数据绘制三维柱状图
按年月分组,统计股票收盘价的均值。并以月对应标签为x轴,每月对应收盘价均值为y轴,年对应标签为z轴,绘制三维柱状图,具体语句如下:
import matplotlib.cm as cm #导入库result = date[['收盘价']].groupby([date.index.year, date.index.month]).mean() #按年月统计收盘价均值plt.subplot(projection='3d') #设置3D绘图空间plt.bar(result.index.codes[1], result['收盘价'], zs=result.index.codes[0], color=cm.ScalarMappable().to_rgba(result.index.codes[0])) #按年月绘制收盘价3维条形图sm = plt.cm.ScalarMappable(norm=plt.Normalize(vmin=result.index.codes[0].min(), vmax=result.index.codes[0].max()))plt.colorbar(sm) #显示对应数值的颜色条plt.xlabel('对应月标签') #给x轴添加标签plt.ylabel('每月对应收盘价均值') #给y轴添加标签plt.title('三维条形图') #添加标题plt.show()
得到结果如下:
5 用bar3d函数绘制三维柱状图
为了让三维柱状图绘制得更加清晰,用bar3d函数绘制一版三维柱状图,具体语句如下:
result = date[['收盘价']].groupby([date.index.year, date.index.month]).mean() #按年月统计收盘价均值ax = plt.subplot(projection='3d') #设置3D绘图空间ax.bar3d(x=result.index.codes[0], y=result.index.codes[1], z=0, dx=1, dy=1, dz=result['收盘价'], color=cm.ScalarMappable().to_rgba(result.index.codes[0])) #绘制3d直方图plt.xlabel('年对应标签') #给x轴添加标签plt.ylabel('月对应标签') #给y轴添加标签plt.title('3维直方图') #添加标题plt.show()
参数解释:
x:每个方柱对应底部点的横坐标。
y:每个方柱对应底部点的纵坐标。
z:每个方柱绘制的起始高度。
dx:每个方块宽度。
dy:每个方块厚度。
dz:每个方块高度。
得到结果如下:
至此,在Python中绘制三维图已全部讲解完毕,感兴趣的同学可以自己实现一遍。
你可能感兴趣:
用Python绘制皮卡丘
用Python绘制词云图
Python人脸识别—我的眼里只有你
Python画好看的星空图(唯美的背景)
【Python】情人节表白烟花(带声音和文字)
用Python中的py2neo库操作neo4j,搭建关联图谱
Python浪漫表白源码合集(爱心、玫瑰花、照片墙、星空下的告白)
长按(扫一扫)识别上方二维码学习更多Python和建模知识,让你的学习和工作更出彩。