首页 > 编程语言 >初识Python----“三剑客“之matplotlib(个人总结,一些简单的图形使用,适用于初学者)

初识Python----“三剑客“之matplotlib(个人总结,一些简单的图形使用,适用于初学者)

时间:2024-06-21 21:32:26浏览次数:3  
标签:plt show Python random matplotlib np import 三剑客

        Matplotlib 是 Python 中最受欢迎的数据可视化软件包之一,支持跨平台运行,它是 Python 常用的 2D 绘图库,同时它也提供了一部分 3D 绘图接口, Matplotlib 通常与 NumPy、Pandas 一起使用,是数据分析中不可或缺的重要工具之一。

        在数据分析中, 我们常常要用到大量的可视化操作, 通过一张图片, 就可以直观展示数据信息, 文不如表, 表不如图, 有图有真相,一图胜千言。

        通过 Matplotlib, 只需要使用几行代码,就可以生成图表,直方图,条形图,箱型图,折线图,散点图,饼图等等,标注的数据让我们很直观的理解各项数据。

我使用的是Jupyter。

官网:Matplotlib — Visualization with Pythonicon-default.png?t=N7T8https://matplotlib.org/

绘图: 

一、导包:

二、简单的配置:

三、基础图形举例:

抛物线:
样式: o,^,v,<,>,s,+,x,D,d,1,2,3,4,h,H,p,| ,_,'-','--','-.',':','.',','
颜色(简写): b(蓝色),g(绿色),r(红色),c(青色),m(品红),y(黄色),k(黑色),w(白色)

画布配置

plt.figure(figsize=(10, 3), dpi=80, facecolor='b')
figsize: 画布大小,宽高
dpi :分辨率
facecolor: 背景颜色

在同一个画布上绘制多个图形

plt.show()展示图形

五、配置参数参考

一部分参数,仅供参考

六、Matplotlib常用视图
折线图(plot)   
import matplotlib.pyplot as plt
import numpy as np
# make data
x = np.linspace(0, 10, 100)
y = 4 + 1 * np.sin(2 * x)
plt.plot(x,y,c="c")
plt.title("折线图")
plt.xlabel("$x$")
plt.ylabel("$y$")
plt.show()

  

柱形图(bar)
import matplotlib.pyplot as plt
import numpy as np
# make data
x = 0.5 + np.arange(8)
y = [4.8, 5.5, 3.5, 4.6, 6.5, 6.6, 2.6, 3.0]
plt.bar(x,y,color="yellow")
plt.title("柱形图")
plt.xlabel("$x$")
plt.ylabel("$y$")
plt.show()

  

直方图(hist)
import matplotlib.pyplot as plt
# 假设data是一个包含数据的列表或数组
data = [1, 2, 1, 3, 3, 1, 4, 2, 1]
# 创建直方图
plt.hist(data, bins=4,color="purple")  
# 直方图将数据范围分成若干个等宽的区间(称为“bins”),可以指定bins的数量
plt.title("直方图")
plt.xlabel("$x$")
plt.ylabel("$y$")
plt.show()

  

散点图(scatter)
import matplotlib.pyplot as plt
import numpy as np
x = 4 + np.random.randint(1,21,size=20)
#用于生成符合正态分布(也称为高斯分布)的随机数
y = 4 + np.random.normal(0, 2, len(x))
# size and color:
sizes = np.random.uniform(1, 100, len(x))
colors = np.random.uniform(15, 80, len(x))
# plot
plt.scatter(x, y, s=sizes, c=colors,alpha=0.6)
plt.title("散点图")
plt.xlabel("$x$")
plt.ylabel("$y$")
plt.show()

  

箱型图(box)

import matplotlib.pyplot as plt
import numpy as np
np.random.seed(10)
D = np.random.normal((3, 5, 4))
plt.boxplot(D,label="xxx")
plt.title("箱线图")
plt.xlabel("$x$")
plt.ylabel("$y$")
plt.legend() #图例,会根据每个线条对象通过label参数指定的标签来生成
plt.show()

  

饼图(pie)

import matplotlib.pyplot as plt
x = [1, 2, 3, 4]
plt.pie(x,startangle=100,autopct="%.2f%%",labels=["a","b","c","d"])
#startangle 指定了饼图中的第一个扇区(切片)的起始角度
#autopct  百分比
plt.title("饼图")
plt.legend()
plt.show()

  

七、超简单3D图形

这部分,我理解的也不是很清楚,seed是随机种子,使随机生成的数据保持不变。

import matplotlib.pyplot as plt
import numpy as np
np.random.seed(100)
fig=plt.figure(figsize=(10,5))
a=np.random.randint(1,100,size=20)
b=np.random.randint(1,100,size=20)
c=np.random.randint(1,100,size=20)
fig,ax = plt.subplots(subplot_kw={"projection": "3d"})
ax.scatter(a, b, c,color="r")
plt.show()

  

最后,,,官网资料也是比较齐全的,但是需要有一定的英语基础这样更好的去使用和理解,学习是一个循序渐进的过程,希望读到这里的朋友,一定要加油哦

标签:plt,show,Python,random,matplotlib,np,import,三剑客
From: https://blog.csdn.net/C_EST_L_VIE/article/details/139828244

相关文章

  • python爬虫之iframe处理+动作链
    python爬虫之iframe处理+动作链selenium处理iframe1、如果定位的标签存在于iframe标签之中,则必须使用switch_to.frame(id)2、动作链(拖动):fromselenium.webdriverimportActionChains(1)实例化一个动作链对象:action=ActionChains(bro)(2)click_and_hold(div):长按且点击操......
  • 横向LQR、纵向PID控制进行轨迹跟踪以及python实现
    横向LQR、纵向PID控制进行轨迹跟踪以及python实现附赠自动驾驶最全的学习资料和量产经验:链接一、LQR问题模型建立:理论部分比较成熟,这里只介绍demo所使用的建模方程:使用离散代数黎卡提方程求解系统状态矩阵:输入矩阵:A矩阵:B矩阵:二、代码实现#导入相关包imp......
  • 【每日一练】python入门级小案例
    题目数字从小到大排序 用户随意分别输入三个数,利用列表的排序方法sort()从小到大排序。代码: 输出结果: 代码分析:先创建三个变量x,y,z,用input()输入获取值;再创建一个列表,元素分别是x,y,z三个变量;利用列表的排序方法sort(),对列表从小到大排序;用for循环遍......
  • 零基础学习python-1.安装python
    1.安装python众所周知,若想学习python就得有一台电脑,如果手机端的同学也想玩python编程的话,那我建议你安装一个QPython玩玩就可以,若是想跟深度学习,那请各位少爷小姐们,一同跟随我,一步步教会你安装python及其编译器第一步.找python官网注意:请识别官网,python是免费的,别选错了......
  • Python基础教程(二十四):日期和时间
    ......
  • Python统计实战:一题搞定一元线性回归的回归系数、显著性及预测值计算
    为了解决特定问题而进行的学习是提高效率的最佳途径。这种方法能够使我们专注于最相关的知识和技能,从而更快地掌握解决问题所需的能力。(以下练习题来源于《统计学—基于Python》。联系获取完整数据和Python源代码文件。)练习题随机抽取10家航空公司,对其最近一年的航班准点率......
  • Python统计实战:一题搞定一元线性回归分析、模型诊断分析
    为了解决特定问题而进行的学习是提高效率的最佳途径。这种方法能够使我们专注于最相关的知识和技能,从而更快地掌握解决问题所需的能力。(以下练习题来源于《统计学—基于Python》。联系获取完整数据和Python源代码文件。)练习题下面是来自R语言的anscombeh数据集(前3行和后3行......
  • Python统计实战:一题搞定双因子方差分析(交互效应分析)
    为了解决特定问题而进行的学习是提高效率的最佳途径。这种方法能够使我们专注于最相关的知识和技能,从而更快地掌握解决问题所需的能力。(以下练习题来源于《统计学—基于Python》。联系获取完整数据和Python源代码文件。)练习题城市道路交通管理部门为研究不同路段和不同时段......
  • python web框架哪家强?Flask、Django、FastAPI对比
    前言当你掌握了python的基础知识,并且会用和HTML和CSS编写简单的静态网页。现在你只需再掌握一个pythonweb框架的知识,就可以开始编写一个动态的网站了。目前市面比较流程的pythonweb框架有三个flask、Django、FastAPI。接下来我们对比一下。他们三个各自有什么特点。Flas......
  • Python+selenium+unittest框架实现网易邮箱的自动登录
    文章目录概要整体架构流程技术细节小结概要 本实例只针对简单的账密登录场景做处理,涉及登录方式切换、人机检测部分未作处理,后续会跟进处理。整体架构流程依赖环境    Python3.7    selenium3.141.0    ddt1.6.0        目......