Python绘制三维图

Python的绘图功能强大,与matlab有得一比,当然不是专业的绘图软件,所以稍微逊色一点。对于一般绘图matlibplot足够了。mpl_toolkits.mplot3d可以用于3D图的绘制。

操作方法

  • 01

    绘制3D柱状图,其数据格式为,二维数组或三维数组。 from numpy import * file=open('C:\\Users\\jyjh\\Desktop\\count.txt','r') arr=[] for i in file.readlines(): temp=[] for j in i.strip().split('\t'): temp.append(float(j)) arr.append(temp) import random import numpy as np import matplotlib as mpl import matplotlib.pyplot as plt from mpl_toolkits.mplot3d  import Axes3D mpl.rcParams['font.size']=10 fig=plt.figure() ax=fig.add_subplot(111,projection='3d') xs=range(len(arr)) ys=range(len(arr[0])) for z in range(len(arr)): xs=range(len(arr)) ys=arr[z] color=plt.cm.Set2(random.choice(range(plt.cm.Set2.N))) ax.bar(xs,ys,zs=z,zdir='y',color=color,alpha=0.5) ax.xaxis.set_major_locator(mpl.ticker.FixedLocator(xs)) ax.yaxis.set_major_locator(mpl.ticker.FixedLocator(ys)) ax.set_xlabel('x') ax.set_ylabel('y') ax.set_zlabel('copies') plt.show() 通过设置xs,ys,z可以设定绘制不同维度的数据。

  • 02

    绘制热图: import numpy as np from matplotlib import pyplot as plt from matplotlib import cm from matplotlib import axes def draw_heatmap(data,xlabels,ylabels): #cmap = cm.get_cmap('rainbow',1000) cmap=cm.gray figure=plt.figure(facecolor='w') ax=figure.add_subplot(2,1,1,position=[1,1,1,1]) ax.set_yticks(range(len(ylabels))) ax.set_yticklabels(ylabels) ax.set_xticks(range(len(xlabels))) ax.set_xticklabels(xlabels) vmax=data[0][0] vmin=data[0][0] for i in data: for j in i: if j>vmax: vmax=j if j<vmin: vmin=j map=ax.imshow(data,interpolation='nearest',cmap=cmap,aspect='auto',vmin=vmin,vmax=vmax) cb=plt.colorbar(mappable=map,cax=None,ax=None,shrink=0.8) plt.show() xl=range(16) yl=range(16) draw_heatmap(arr,xl,yl)

  • 03

    绘制曲面图 from matplotlib import pyplot as plt import numpy as np from mpl_toolkits.mplot3d import Axes3D figure = plt.figure() ax = Axes3D(figure) X = np.arange(-10, 10, 0.25) Y = np.arange(-10, 10, 0.25) #网格化数据 X, Y = np.meshgrid(X, Y) R = np.sqrt(X**2 + Y**2) Z = np.cos(R) ax.plot_surface(X, Y, Z, rstride=1, cstride=1, cmap='rainbow') plt.show()

  • 04

    绘制曲线图 from mpl_toolkits.mplot3d import Axes3D import numpy as np import matplotlib.pyplot as plt #生成画布 figure=plt.figure() ax=figure.add_subplot(111,projection='3d') #生成向量 z=np.linspace(0,6,1000) r=1 x=r*np.sin(np.pi*2*z) y=r*np.cos(np.pi*2*z) ax.plot(x,y,z) plt.show()

(0)

相关推荐

  • Origin绘制三维图怎么绘制垂线和误差棒?

    在三维图中的数据处理中通常有一个目标函数,计算数据或是试验结果与目标函数通常有些差距,为了更方便表明实际数据与目标函数的关系,我们可以在实验数据与目标函数之间用垂线进行关联.在这篇经验中,我们的目标函 ...

  • MATLAB怎么绘制二维曲线图三维图和子图

    为直观表达MATLAB运算结果或将程序运行结果可视化,GUI界面是一种表达方法,包括表格图形控件等,简单点的话,在m文件中编程绘图,将结果图形显示.下面分享给大家MATLAB绘制二维曲线图.三维图.一 ...

  • SolidWorks怎么绘制圆柱体? sw画三维图的教程

    SolidWorks中想要绘制一个圆柱体,该怎么绘制呢?下面我们就来看看详细的教程. 1.打开SolidWorks软件. 2.选择前视图基准面,点击一下会有选择选项,选择绘制草图. 3.选择草图功能里 ...

  • 如何在Origin三维图中绘制垂线和误差棒

    在三维图中的数据处理中通常有一个目标函数,计算数据或是试验结果与目标函数通常有些差距,为了更方便表明实际数据与目标函数的关系,我们可以在实验数据与目标函数之间用垂线进行关联.在这篇中,我们的目标函数所 ...

  • matlab如何绘制三维曲面图

    许多时候需要绘制三维曲面图,比如知道三维数据(x,y,z),如何绘制出三维图像?下面,小编以一个小例子演示基本操作,请看下文: 操作方法 01 作为演示,以二元函数图 z = xexp(-x^2-y^ ...

  • 如何使用Python的Pandas库绘制折线图

    我们经常会使用Python的Pandas绘制各种数据图形,那么如何使用它绘制折线图呢?下面小编给大家分享一下. 操作方法 01 首先我们需要打开Excel软件准备需要的数据,这里多准备几列数据,一列就 ...

  • PPT怎么绘制三维立体的柱形?

    ppt中可以绘制简单的三维图形,该怎么绘制立体的柱形呢?下面我们就来看看详细的教程. 1.比如图中的效果,其实做法也就是利用三个形状进行组合而成,三个形状分别是菱形以及两个矩形(矩形需要进行一个变形操 ...

  • proe二维平面图怎么制作成三维图?

    proe中想要将二维图转换成三维图,该怎么转换呢?下面我们就来看看详细的教程. 1.打开Proe 4.0 软件,新建零件绘制. 2.在绘图区域绘制二维截面, 3.以旋转的方式生成实体 4.建立斜面上的 ...

  • VISIO怎么绘制三维正方体图形?

    使用VISIO,我们可以根据三维透视原则,绘制三维的形状.下面就以绘制立体正方形作为例子,给大家介绍相关的方式. 1.如果我们处于开始菜单栏,我们可以选择指针工具旁边的选项,我们首先选择拆线图 2.我 ...