示例1

import numpy as np
import matplotlib.pyplot as plt
#plt.rcParams['font.family'] = ['sans-serif']
#用来正常显示中文标签
plt.rcParams['font.sans-serif'] = ['Simhei']
#用来正常显示负号
plt.rcParams['axes.unicode_minus']=False t = np.arange(1,10, 0.05)
x = np.sin(t)
y = np.cos(t) # 绘制一个圆形散点图的示例
#定义一个图像窗口
plt.figure(figsize=(6,5))
#绘制一条线
plt.plot(x,y,'r-.')
#使坐标轴相等
plt.axis('equal')
plt.xlabel('正弦')
plt.ylabel('余弦')
plt.title('一个圆形')
#显示图像
plt.show()

  

示例2

import numpy as np
import matplotlib.pyplot as plt
##subplot()绘制多个子图 #生成X
x1 = np.linspace(0.0, 5.0)
x2 = np.linspace(0.0, 2.0)
#生成Y
y1 = np.cos(2*np.pi*x1) * np.exp(-x1)
y2 = np.cos(2*np.pi*x2)
##绘制第一个子图
plt.subplot(2, 1, 1)
plt.plot(x1, y1,'y-o')
plt.title('A Tale of 2 Subplots')
plt.ylabel('Damped oscillation')
##绘制第二个子图
plt.subplot(2,1, 2)
plt.plot(x2,y2,'r-o')
plt.xlabel('time(s)')
plt.ylabel('Undamped')
plt.show()

示例3

#直方图
import numpy as np
import matplotlib.pyplot as plt
from scipy import stats #example data
mu = 100 #分布的均值
sigma = 15 #分布的标准差
x = mu + sigma * np.random.randn(10000) #直方图的条数
num_bins = 50
#绘制直方图
n,bins,patches=plt.hist(x,num_bins,density=1, color='g',alpha=0.5)
#添加一个最佳拟合和曲线
y = stats.norm.pdf(bins, mu, sigma) #返回关于数据的 pdf 数值(概率密度函数)
plt.plot(bins,y,'r--')
plt.xlabel('Smarts')
plt.ylabel('Probability')
#在图中添加公式需要使用 latex 的语法($$)
plt.title('Histogram of IQ : $\mu=100$ , $\sigma=15$')
#调整图像的间距,防止 轴数值与 label 重合
plt.subplots_adjust(left=0.15)
plt.show() print("Bind:\n",bins)

坑:plt.hist中原来的normed没有了,替换成了density,否则画不出来。

示例4

#matplotlib 绘制三维图像
import numpy as np
from matplotlib import cm
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D #生成数据
delta = 0.2
x = np.arange(-3,3, delta)
y = np.arange(-3,3, delta)
X, Y = np.meshgrid(x,y)
Z = X**2 + Y**2
x = X.flatten()
#返回一维的数组,但该函数只能适用于 numpy 对象( array 或者 mat)
y = Y.flatten()
z = Z.flatten()
fig = plt.figure(figsize=(12,6))
ax1 = fig.add_subplot(121 , projection='3d')
ax1.plot_trisurf(x,y,z, cmap=cm.jet , linewidth=0.01)
#cmap 指颜色,默认绘制为 RGB(A )颜色空间, jet 表示”蓝 红”颜色
plt.title("3D")
ax2 = fig.add_subplot(122)
cs= ax2.contour(X, Y, Z, 15 , cmap='jet')
#注意这里是大写 X,Y,Z 15 代表的是显示等高线的密集程度,数值越大,画的等
#高线数就越多
ax2.clabel(cs,inline=True,fontsize=10,fmt='%1.1f')
plt.title('Contour')
plt.show()

示例5

#三维图像+各个轴的投影等高线
from mpl_toolkits.mplot3d import axes3d
import matplotlib.pyplot as plt
from matplotlib import cm
fig= plt.figure (figsize=(8 , 6))
ax= fig.gca(projection='3d')
#生成 维测试数据
X, Y, Z = axes3d.get_test_data(0.05)
ax.plot_surface(X, Y, Z, rstride=8, cstride=8, alpha=0.3)
cset = ax.contour(X, Y, Z, zdir='z', offset=-100 , cmap=cm.coolwarm)
cset = ax.contour(X, Y, Z, zdir='x', offset=-40 , cmap=cm.coolwarm)
cset=ax.contour(X, Y, Z, zdir= 'y',offset=40 , cmap=cm.coolwarm)
ax.set_xlabel('x')
ax.set_xlim (-40 , 40)
ax.set_ylabel ('Y')
ax.set_ylim(-40 , 40)
ax.set_zlabel ('z')
ax.set_zlim (-100 , 100)
plt.show()

示例6

import numpy as np
import matplotlib . pyplot as plt
#生成数据
n_groups = 5 #组数
#平均分和标准差
means_men = (20 , 35 , 30 , 35 , 27)
std_men = (2 , 3 ,4 ,1 , 2)
means_women = (25 , 32 , 34 , 20 , 25)
std_women = (3 , 5 , 2 , 3 , 3)
#条形图
fig , ax= plt.subplots()
#生成 0, 1. 2, 3 , ..
index= np.arange (n_groups)
bar_width = 0.35 #条的宽度
opacity= 0.4
error_config = {'ecolor': '0.3'}
#条形图中的第一类条
rectsl = plt.bar(index , means_men , bar_width,
alpha = opacity,
color ='b',
yerr = std_men,
error_kw = error_config,
label = 'Men')
#条形图中的第二类条
rects2 = plt.bar(index +bar_width , means_women , bar_width,
alpha = opacity,
color = 'r',
yerr = std_women,
error_kw = error_config,
label = 'Women')
plt.xlabel('Group')
plt.ylabel('Scores')
plt. title('Scores by group and gender')
plt.xticks(index + bar_width, ('A','B','C','D','E'))
plt.legend()
#自动调整 subplot 的参数给指定的填充区
plt.tight_layout()
plt.show()

示例7

#饼图
import matplotlib.pyplot as plt
#切片将按顺时针方向排列并绘制
labels = 'Frogs','Hogs','Dogs','Logs' #标注
sizes = [15 , 30 , 45 , 10] #大小
colors = ['yellowgreen','gold','lightskyblue','lightcoral'] #颜色
# 0.1代表第二个块从圆中分离出来
explode = (0 ,0, 0, 0.1)
#绘制饼图
plt.pie(sizes, explode=explode , labels=labels, colors=colors,
autopct = '%1.1f%%', shadow=True , startangle=90)
plt.axis('equal')
plt.show()

示例8

#气泡图(散点图〉
import matplotlib.pyplot as plt
import pandas as pd
#导入数据
df_data= pd.read_csv("https://github.com/sileixinhua/Python_data_science_by_iris/
blob/master/iris.csv")
print(df_data.head()) #作图
fig , ax = plt.subplots()
#设置气泡图颜色 colors =15* ["yellowgreen","gold","green","blue","red","black",
'lightskyblue','lightcoral','yellow','pink'] #创建气泡图 SepalLength x, SepalWidth ,同时设置 PetalLength 为气
#泡大 ,并设置颜色透明度等
ax.scatter(df_data['sepal_length'],df_data['sepal_width'],s= df_data['petal_length']*100,color = colors,alpha = 0.6)
#第三个变 表明根据[ PetalLength ]门 00 数据显示气泡的大小
ax.set_xlabel ('sepal_length(cm)')
ax.set_ylabel ('epal_width(cm)')
ax.set_title ('petal_length(cm)*100')
#显示网格
ax.grid(True)
fig.tight_layout()
plt.show()

matplotlib 示例的更多相关文章

  1. python强大的绘图模块matplotlib示例讲解

    Matplotlib 是 Python 的绘图库.作为程序员,经常需要进行绘图,在我自己的工作中,如果需要绘图,一般都是将数据导入到excel中,然后通过excel生成图表,这样操作起来还是比较繁琐的 ...

  2. matplotlib示例

    plt.plot 内只有一个列表示例 import matplotlib.pyplot as plt lst = [4.53,1.94,4.75,0.43,2.02,1.22,2.13,2.77] p ...

  3. matplotlib basic and boxplot

    ============================================matplotlib 绘图基础========================================= ...

  4. python数据分析scipy和matplotlib(三)

    Scipy 在numpy基础上增加了众多的数学.科学及工程常用的库函数: 线性代数.常微分方程求解.信号处理.图像处理.稀疏矩阵等: Matplotlib 用于创建出版质量图表的绘图工具库: 目的是为 ...

  5. Matplotlib基本使用简介

    目录 Matplotlib基本使用简介 1. Matplotlib简介 2. Matplotlib操作简介 Matplotlib基本使用简介 1. Matplotlib简介   Matplotlib是 ...

  6. python基础全部知识点整理,超级全(20万字+)

    目录 Python编程语言简介 https://www.cnblogs.com/hany-postq473111315/p/12256134.html Python环境搭建及中文编码 https:// ...

  7. 巩固复习(Hany驿站原创)_python的礼物

    Python编程语言简介 https://www.cnblogs.com/hany-postq473111315/p/12256134.html Python环境搭建及中文编码 https://www ...

  8. 如何使用Python 进行数据可视化

    微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 在进行数据分析的时候,经常需要将数据进行可视化,以方便我们对数据的认识和理解. 0,Matplotl ...

  9. Matplotlib常用示例入门

    一.Matplotlib介绍 Matplotlib 是一个 Python 的 2D绘图库,它以各种硬拷贝格式和跨平台的交互式环境生成出版质量级别的图形.通过 Matplotlib,开发者可以仅需要几行 ...

随机推荐

  1. zabbix 自定义指标数据来源

    1.cpu load https://blog.csdn.net/scugxl/article/details/77199403 1)基本含义:运行队列长度,表示当前有多少个正在等待的进程和正在执行的 ...

  2. jquery live 区别

    http://www.360doc.com/content/13/1222/22/14022539_339358149.shtml 开始的时候在jQuery.1.7.1中使用了.live()觉得很好用 ...

  3. 干货 | Kafka 内核知识梳理,附思维导图

    前面我们已经分享过几篇Kafka的文章,最近简单梳理了下Kafka内核相关的知识,涵盖了Kafka架构总结,副本机制,控制器,高水位机制,日志或消息存储,消息发送与消费机制等方面知识.文末含对应的Ka ...

  4. java——引入第三方jar包

    第一步:项目->New->Folder:创建一个文件夹: 第二步:把要引入的jar包粘贴到新建的文件夹中: 第三步:选中引入的jar包->Build Path->Add to ...

  5. LNMP PHP升级脚本

    升级PHP前,请确认你的网站程序是否支持升级到的PHP版本,防止升级到网站程序不兼容的PHP版本,具体可以去你使用的PHP程序的官网查询相关版本支持信息.v1.3及以后版本大部分情况下也可以进行降级操 ...

  6. vue 实例化使用模板

    var vm = new Vue({ el:"", data:{ }, methods:{ } })

  7. (三)vue数据绑定及相应的命令

    vue数据绑定及相应的命令 {{ Text }} 双括号进行数据渲染 动态绑定数据 例如:{{message}} data: { return{ message: 'Hello Vue!' } } 2 ...

  8. [Node.js]001.安装与环境配置

    安装与环境配置 第一步:下载安装文件 第二步:安装nodejs 第三步:npm安装 第四步:安装相关环境 第五步:安装CoffeeScript 第六步:CoffeeScript测试实例 第一步:下载安 ...

  9. [转]什么是OpenSSH

    定义 SSH是什么? 相关概念 OpenSSH安全吗?究竟安全在哪里呢? Telnet这么好的一个工具为什么还要用户手动开启呢? SSH账户类型 iPhone中修改密码的大致步骤 如何从电脑连接通过S ...

  10. [SD心灵鸡汤]000.每月一则 - 索引

    [SD心灵鸡汤]001.每月一则 - 2015.05 [SD心灵鸡汤]002.每月一则 - 2015.06 [SD心灵鸡汤]003.每月一则 - 2015.07 [SD心灵鸡汤]004.每月一则 - ...