Matplotlib画图

xiaoxiao2021-02-28  22

导入包:

import numpy as npimport matplotlib as mplimport matplotlib.pyplot as plt%matplotlib inline

1、一维数据集

1.1、输入随机变量:

np.random.seed(1000)

y=np.random.standard_normal(20)

x=range(len(y))

1.2、输出图表1

plt.plot(x,y)

1.3、输出图表2

说明:添加网状线、紧凑坐标轴

plt.plot(y.cumsum())

plt.grid(True)plt.axis('tight')

1.4、输出图表3说明:添加标题标签等

plt.figure(figsize=(7,4))plt.plot(y.cumsum(),'b',lw=1.5)plt.plot(y.cumsum(),'ro')plt.grid('True')plt.axis('tight')plt.xlabel('index')plt.ylabel('value')plt.title('a simple plot')

2、二维数据集

2.1、输出图表4

说明:两个单独子集

np.random.seed(2000)y=np.random.standard_normal((20,2)).cumsum(axis=0)

plt.figure(figsize=(7,4))

plt.plot(y[:,0],lw=1.5,label='1st') plt.plot(y[:,1],lw=1.5,label='2nd') plt.plot(y,'ro') plt.grid=('True') plt.legend(loc=0) plt.axis('tight') plt.xlabel('index') plt.ylabel('value') plt.title('a simple plot')

2.2、输出图表5

说明:使用两个y轴、两个子图

fig,ax1=plt.subplots()

plt.plot(y[:,0],'b',lw=1.5,label='1st')plt.plot(y[:,0],'ro')plt.grid=('True')plt.legend(loc=8)plt.axis('tight')plt.xlabel('index')plt.ylabel('value 1st')plt.title('a simple plot')ax2=ax1.twinx()plt.plot(y[:,1],'g',lw=1.5,label='2nd')plt.plot(y[:,1],'ro')plt.legend(loc=0)

plt.ylabel('value 2nd')

2.3、输出图表6

说明:单独设计两个子图

plt.figure(figsize=(7,5))

plt.subplot(211)plt.plot(y[:,0],lw=1.5,label='1st')plt.plot(y[:,0],'ro')plt.grid=('True')plt.legend(loc=0)plt.axis('tight')plt.ylabel('value')

plt.title('a simple plot')

plt.subplot(212)plt.plot(y[:,1],'g',lw=1.5,label='2nd')plt.plot(y[:,1],'ro')plt.grid=('True')plt.legend(loc=0)plt.axis('tight')plt.xlabel('index')plt.ylabel('value')

2.4、输出图表7

说明:组合线图、柱状图

plt.figure(figsize=(9,4))

plt.subplot(121)plt.plot(y[:,0],lw=1.5,label='1st')plt.plot(y[:,0],'ro')plt.grid=('True')plt.legend(loc=0)plt.axis('tight')plt.xlabel('index')plt.ylabel('value')plt.title('1st data set')

plt.subplot(122)

plt.bar(np.arange(len(y)),y[:,1],width=0.5,color='g',label='2nd')plt.grid=('True')plt.legend(loc=0)plt.axis('tight')plt.xlabel('index')plt.title('2nd data set')

3、其他绘图

3.1、输出图表8

说明:散点图

y=np.random.standard_normal((1000,2))

plt.figure(figsize=(7,5)) plt.plot(y[:,0],y[:,1],'ro') plt.grid(True) plt.xlabel('1st') plt.ylabel('2nd') plt.title('scatter plot')

3.2、输出图表9

说明:使用scatter函数生成

plt.figure(figsize=(7,5))plt.scatter(y[:,0],y[:,1],marker='o')plt.grid(True)plt.xlabel('1st')plt.ylabel('2nd')plt.title('scatter plot')

3.3、输出图表10

说明:加入第三维数据

c=np.random.randint(0,10,len(y))plt.figure(figsize=(7,5))plt.scatter(y[:,0],y[:,1],c=c,marker='o')plt.colorbar()plt.grid(True)plt.xlabel('1st')plt.ylabel('2nd')plt.title('scatter plot')

3.4、输出图表11

说明:直方图

plt.figure(figsize=(7,4))plt.hist(y,label=['1st','2nd'],bins=25)plt.grid(True)plt.legend(loc=0)plt.xlabel('value')plt.ylabel('frequrency')plt.title('histogram')

3.5、输出图表12

说明:数据集堆叠

y=np.random.standard_normal((100,2))plt.figure(figsize=(7,4))plt.hist(y,label=['1st','2nd'],color=['b','g'],stacked=True,bins=20)plt.grid(True)plt.legend(loc=0)plt.xlabel('value')plt.ylabel('frequency')plt.title('histogram')

3.5、输出图表13

说明:箱型图

fig,ax=plt.subplots(figsize=(7,4))plt.boxplot(y)plt.grid(True)plt.setp(ax,xticklabels=['1st','2nd'])plt.xlabel('date set')plt.ylabel('value')plt.title('boxplot')

转载请注明原文地址: https://www.6miu.com/read-2603145.html

最新回复(0)