数据可视化——绘制3D图表和绘制地图

一、使用mplot3d绘制3D图表

1.1、mplot3d概述
matplotlib不仅专注于二维图表的绘制,也具有绘制3D图表、统计地图的功能,并将这些功能分别封装到工具包mpl_toolkits.mplot3d。mpl_toolkits.basemap中,另外还可以结合animation模块给图表添加动画效果。
matplt otlib 可以两种方式可以创建Axes3D类的对象。
通过以下:

第一种: Axes3D()方法。
第二种: add_subplot()方法。

1.2、绘制常见的3D图表
常见的3D图表包括3D线框图、3D曲面图、3D柱形图、3D散点图等。

Axes3D类的常见绘图方法及其说明
在这里插入图片描述
1、绘制3D线框图
Axes3D类的对象使用plot_wireframe()方法绘制线框图,语法格式如下.

plot_wireframe(self,X,Y,Z,*args,**kwargs

该方法的常用语法是:

  • X,Y,Z:表示x、y、z轴的数据。
  • rcount,ccount:表示每个轴方向上使用的最大样本量,默认为50。若输入的样本量更大,则会采用降采样的方式减少样本的数量;若输入的样本量为0,则不会对相应轴方向的数据进行采样。
  • rstride,cstride:表示采样的密度。若仅使用参数rstride或cstride中任意一个,则另一个参数默认为0。

绘制3D线框图的示例代码如下:

import matplotlib.pyplot as plot
from mpl_toolkits.mplot3d import axes3d
fig=plt.figure()
ax=fig.add_subplot(111,projection='3d')
X,Y,Z=axes3d.get_test_data(0.05)
ax.plot_wireframe(X,Y,Z,rstride=10,cstride=10)
plt.title('39')
plt.show()

代码运行结果如下:
在这里插入图片描述
2、绘制3D曲面图
Axes3D类的对象使用plot_surface()方法绘制3D曲面图,语法格式如下:

plot_surface(self, X,Y,Z,*args, norm=None.vmin=None. vmax=None语法
lightsource=None,**kwargs)

该方法常用的参数含义如下:

  • X,Y,Z:表示x、y、z轴的数据。
  • rcount,ccount:表示每个坐标轴方向上使用的最大样本量,默认为50。
  • rstride,cstride:表示采样的密度。color:表示曲面的颜色。
  • cmap:表示曲面的颜色映射表。
  • shade:表示是否对曲面进行着色。

绘制3D曲面图的示例代码如下:

import matplotlib.pyplot as plot
from mpl_toolkits.mplot3d import axes3d
from matplotlib import cm
import numpy as np
x1=np.arange(-5,5,0.25)
y1=np.arange(-5,5,0.25)
x1,y1=np.meshgrid(x1,y1)
r1=np.sqrt(x1**2+y1**2)
z1=np.sin(r1)
fig=plt.figure()
ax=fig.add_subplot(111,projection='3d')
ax.plot_surface(x1,y1,z1,cmap=cm.coolwarm,linewidth=0,
                   antialiased=False)
ax.set_zlim(-1.01,1.01)
plt.title('39')
  • 4
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值