示例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. [前端进阶课] 构建自己的 webpack 知识体系

    webpack webpack 最出色的功能之一就是,除了 JavaScript,还可以通过 loader 引入任何其他类型的文件. Webpack 核心概念: Entry(入口):Webpack 执 ...

  2. Apache Module mod_reqtimeout

    Apache Module mod_reqtimeout Available Languages: en Description: Set timeout and minimum data rate ...

  3. HDU6440 Dream

    题目链接:https://vjudge.net/problem/HDU-6440 知识点: 构造.费马小定理 题目大意: 给定一个素数 $p$,要求定义一个加法运算表和一个乘法运算表,尺寸都为 $p ...

  4. 解决You should consider upgrading via the 'python -m pip install --upgrade pip' command. (pip工具版本较低导致)

    步骤1:  找到pip- 版本号 dist-info 文件夹 操作: 在python的安装目录下的Lib文件下的site-packages文件夹下找到 ip- 版本号 dist-info 文件夹   ...

  5. Kubernetes学习笔记(五):卷

    简介 卷是Pod的一部分,与Pod共享生命周期.它不是独立的Kubernetes对象,因此不能单独创建. 卷提供的存储功能不但可以解决容器重启后数据丢失的问题,还可以使数据在容器间共享. 一些卷的类型 ...

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

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

  7. 三,<ul><li>实际应用时遇到的问题

    在布局中使用的比较多的就是这个,快速排列一行或多行文字,还有横排显示作为导航栏标题栏等等书写格式:<ul>    <li>山东教育.....</li></ul ...

  8. [Firefox附加组件]0003.弹出对话框

    Firefox中使用面板(panel)模块来显示弹出对话框,面板的内容通过HTML编写.你可以在面板上运行content script,尽管在面板里的脚本无法直接访问插件代码,但是你可以在面板脚本和插 ...

  9. java第十三周课后作业 0529

    1.把多个企鹅的信息添加到集合中查看企鹅的数量及所有企鹅的信息删除集合中部分企鹅的元素判断集合中是否包含指定企鹅 package homework; import java.util.ArrayLis ...

  10. Parrot os KDE还是MATE版本

    在经历了KDE桌面痛苦折磨后,准备转投MATE的怀抱,不得不说Parrot KDE的ram的占有和windows 10差不多,大量的图形化处理,让我本来不多的内存更加血上加霜. 所以,关于版本的推荐, ...