python机器学习入门之matplotlib的使用(超详细,必看)

简介: python机器学习入门之matplotlib的使用(超详细,必看)

matplotlib是python的一个基本2D绘图库 功能强大


比较常用的是里面的pyplot子模块


常见函数有figure()创建一个空白画布  add_subplot()创建子图  title()设置标题


xlabel()设置x轴名称 ylabel()设置y轴名称 legend()指定图例 show()显示图形等等


1:实例一如下

1666420392007.jpg


代码如下

import pandas as pd
import numpy as np
from pandas import Series
from numpy import nan as NA
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
fig=plt.figure()
ax1=fig.add_subplot(2,2,1)
ax2=fig.add_subplot(2,2,2)
ax3=fig.add_subplot(2,2,3)
plt.show()


2:在子图上绘制图形 如三角形 椭圆 矩形


1666420352244.jpg


代码如下

import pandas as pd
import numpy as np
from pandas import Series
from numpy import nan as NA
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
ax=fig.add_subplot(1,1,1)
rect=plt.Rectangle((0.2,0.75),0.4,0.15,color='r',alpha=0.3)
cir=plt.Circle((0.7,0.2),0.15,color='b',alpha=0.3)
pgon=plt.Polygon([[0.2,0.2],[0.35,0.25],[0.2,0.6]],color='g',alpha=0.9)
ax.add_patch(rect)
ax.add_patch(cir)
ax.add_patch(pgon)
plt.show()


3:直线图的绘画


1666420336478.jpg

import pandas as pd
import numpy as np
from pandas import Series
from numpy import nan as NA
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
a=np.arange(10)
plt.xlabel('x')
plt.ylabel('y')
plt.plot(a,a*1.5,a,a*2.5,a,a*3.5,a,a*4.5)
plt.legend(['1.5x','2.5x','3.5x','4.5x'])
plt.title('simple lines')
j=np.linspace(-10,10,100)
k=np.sin(j)
plt.plot(j,k,marker="o")
plt.show()



4:为series数据绘制图形


1666420324751.jpg

import numpy as np
from pandas import Series
from numpy import nan as NA
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
s1=Series(np.random.randn(1000).cumsum())
s2=Series(np.random.randn(1000).cumsum())
plt.subplot(2,1,1)
ax1=s1.plot(kind='line',label='S1',title="figures of Series",style='--')
s2.plot(ax=ax1,kind='line',label='S2')
plt.ylabel('value')
plt.legend(loc=2)
plt.subplot(2,1,2)
s1[0:10].plot(kind='bar',grid=True,label='s1')
plt.xlabel('index')
plt.ylabel('value')
plt.show()



5:三维图形的绘画 虽说matplotlib主要用于二维图形绘制 但是三维的也可以画


1666420170839.jpg

import numpy as np
from pandas import Series
from numpy import nan as NA
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
def randrange(n,randFloor,randceil):
    rnd=np.random.rand(n)
    return (randceil-randFloor)*rnd+randFloor
plt.rcParams['font.sans-serif']=['SimHei']
fig=plt.figure(figsize=(10,8))
ax=fig.add_subplot(111,projection="3d")
n=100
for zmin,zmax,c,m,l in[(4,15,'r','o','低值'),(13,40,'g','*','高值')]:
    x=randrange(n,0,20)
    y=randrange(n,0,20)
    z=randrange(n,zmin,zmax)
    ax.scatter(x,y,z,c=c,marker=m,label=l,s=z*6)
ax.set_xlabel("x-value")
ax.set_ylabel("y-value")
ax.set_zlabel("z-value")
ax.set_title("高低值 3D散点图",alpha=0.6,size=15,weight='bold')
ax.legend(loc="upper left")
plt.show()
相关文章
|
1月前
|
机器学习/深度学习 数据采集 算法
深入了解机器学习:从入门到应用
【10月更文挑战第6天】深入了解机器学习:从入门到应用
|
3天前
|
移动开发 数据可视化 数据挖掘
利用Python实现数据可视化:以Matplotlib和Seaborn为例
【10月更文挑战第37天】本文旨在引导读者理解并掌握使用Python进行数据可视化的基本方法。通过深入浅出的介绍,我们将探索如何使用两个流行的库——Matplotlib和Seaborn,来创建引人入胜的图表。文章将通过具体示例展示如何从简单的图表开始,逐步过渡到更复杂的可视化技术,帮助初学者构建起强大的数据呈现能力。
|
11天前
|
数据可视化 JavaScript 前端开发
Python中交互式Matplotlib图表
【10月更文挑战第20天】Matplotlib 是 Python 中最常用的绘图库之一,但默认生成的图表是静态的。通过结合 mpld3 库,可以轻松创建交互式图表,提升数据可视化效果。本文介绍了如何使用 mpld3 在 Python 中创建交互式散点图、折线图和直方图,并提供了详细的代码示例和安装方法。通过添加插件,可以实现缩放、平移和鼠标悬停显示数据标签等交互功能。希望本文能帮助读者掌握这一强大工具。
35 5
|
10天前
|
机器学习/深度学习 人工智能 自然语言处理
探索AI的奥秘:机器学习入门指南
【10月更文挑战第30天】本篇文章是一份初学者友好的机器学习入门指南,旨在帮助读者理解并开始实践机器学习。我们将介绍机器学习的基本概念,包括监督学习、无监督学习和强化学习等。我们还将提供一些实用的代码示例,以帮助读者更好地理解和应用这些概念。无论你是编程新手,还是有一定经验的开发者,这篇文章都将为你提供一个清晰的机器学习入门路径。
27 2
|
15天前
|
数据采集 数据可视化 数据处理
如何使用Python实现一个交易策略。主要步骤包括:导入所需库(如`pandas`、`numpy`、`matplotlib`)
本文介绍了如何使用Python实现一个交易策略。主要步骤包括:导入所需库(如`pandas`、`numpy`、`matplotlib`),加载历史数据,计算均线和其他技术指标,实现交易逻辑,记录和可视化交易结果。示例代码展示了如何根据均线交叉和价格条件进行开仓、止损和止盈操作。实际应用时需注意数据质量、交易成本和风险管理。
35 5
|
17天前
|
机器学习/深度学习 人工智能 算法
机器学习基础:使用Python和Scikit-learn入门
机器学习基础:使用Python和Scikit-learn入门
25 1
|
28天前
|
机器学习/深度学习 人工智能 算法
机器学习基础:使用Python和Scikit-learn入门
【10月更文挑战第12天】本文介绍了如何使用Python和Scikit-learn进行机器学习的基础知识和入门实践。首先概述了机器学习的基本概念,包括监督学习、无监督学习和强化学习。接着详细讲解了Python和Scikit-learn的安装、数据处理、模型训练和评估等步骤,并提供了代码示例。通过本文,读者可以掌握机器学习的基本流程,并为深入学习打下坚实基础。
20 1
|
30天前
|
机器学习/深度学习 人工智能 算法
机器学习基础:使用Python和Scikit-learn入门
本文介绍了如何使用Python和Scikit-learn进行机器学习的基础知识和实践。首先概述了机器学习的基本概念,包括监督学习、无监督学习和强化学习。接着详细讲解了Python和Scikit-learn的安装、数据处理、模型选择与训练、模型评估及交叉验证等关键步骤。通过本文,初学者可以快速上手并掌握机器学习的基本技能。
48 2
|
1月前
|
机器学习/深度学习 人工智能 数据挖掘
机器学习基础:使用Python和Scikit-learn入门
【10月更文挑战第6天】在人工智能领域,机器学习已成为核心技术。本文指导初学者使用Python与Scikit-learn入门机器学习,涵盖基本概念、环境搭建、数据处理、模型训练及评估等环节。Python因简洁性及其生态系统成为首选语言,而Scikit-learn则提供了丰富工具,简化数据挖掘与分析流程。通过实践示例,帮助读者快速掌握基础知识,为进一步深入研究奠定坚实基础。
25 4
|
1月前
|
机器学习/深度学习 自然语言处理 前端开发
前端大模型入门:Transformer.js 和 Xenova-引领浏览器端的机器学习变革
除了调用API接口使用Transformer技术,你是否想过在浏览器中运行大模型?Xenova团队推出的Transformer.js,基于JavaScript,让开发者能在浏览器中本地加载和执行预训练模型,无需依赖服务器。该库利用WebAssembly和WebGPU技术,大幅提升性能,尤其适合隐私保护、离线应用和低延迟交互场景。无论是NLP任务还是实时文本生成,Transformer.js都提供了强大支持,成为构建浏览器AI应用的核心工具。
396 1