文章目录

  • 效果展示:
  • 视频链接
  • 实现的思想
  • 使用到的函数包
  • 图片一对应的代码展示
  • 图片二 对应的代码展示
  • 注意事项

效果展示:


视频链接

python绘制一个简单的函数图像(B站视频)

实现的思想

其实就是我们先把点给设置好,然后就可以描点连线了
就是使用的matplotlib这个包下面的pylib这个模块下面的 plot()和scantter()方法来实现的
这两个包的使用手册参考网址:

numpy使用参考手册

matplotlib的模块pylab参考手册

使用到的函数包

matplotlib 和 numpy

NumPy(Numerical Python) 是 Python 语言的一个扩展程序库,支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。

Matplotlib 可能是 Python 2D-绘图领域使用最广泛的套件。它能让使用者很轻松地将数据图形化,并且提供多样化的输出格式。这里将会探索 matplotlib 的常见用法。

Matplotlib 是 Python 的绘图库,它能让使用者很轻松地将数据图形化,并且提供多样化的输出格式。
Matplotlib 可以用来绘制各种静态,动态,交互式的图表。
Matplotlib 是一个非常强大的 Python 画图工具,我们可以使用该工具将很多数据通过图表的形式更直观的呈现出来。
Matplotlib 可以绘制线图、散点图、等高线图、条形图、柱状图、3D 图形、甚至是图形动画等等。

因为视频里面已经说的很清楚了这里我就直接上代码了

图片一对应的代码展示

图片一对应的代码运行代码之前一定要记得导包(导包方法视频里面有讲解)
图片一对应的代码

# 在这里我使用matplot的pyplot模块来绘制一个散点图,并且在里面添加上直线import matplotlib.pylab as mp  # 绘制点的时候使用的是 matplotlib.pylab的scantter方法
import numpy as np  # 这是一个支持数组和矩阵计算的模块# 让图片上面可以显示中文
mp.rcParams['font.sans-serif']=['SimHei']
mp.rcParams['axes.unicode_minus']=Falsex = np.array([1,2,3,4,5,6,7,8])
y = np.array([1,4,9,16,7,11,23,18])
x_max = x.max()
x_min = x.min()
print("横坐标最大的是:",x_max)
y_min = y.min()
print("纵坐标最小的是:",x_min)# 使用matplotlib.pylab 的scantter进行描点
mp.scatter(x,y,label="点点")
# 我想再让这些点连起来
mp.plot(x,y,color="red",label="直线")# 我想画一条直线得到 y = y_min这一条直线
# 只用定义两个点 使用matplotlib.pyplot的plot方法将两个点连起来就可以了
lin_x = np.array([x_min,x_max])
lin_y = np.array([y_min,y_min])
mp.plot(lin_x,lin_y)#设置一个标题
mp.title("离散点和quxian")
#让标签生效
mp.legend()
# 让图片显示出来
mp.show()

图片二 对应的代码展示

# 讲解一下Numpy这个库的一些函数
# 1.linspace(start , end , num)函数  就是在 start 和 end 之间随机生成num个数  返回的是一个数组
import numpy
import matplotlib.pylab as mp  #mp就是起了一个别名# 解决一下图片里面不显示中文的问题
# 让画图软件可以显示中文字体, 默认只显示英文
mp.rcParams['font.sans-serif'] = ['SimHei']
# 显示负号(同上)
mp.rcParams['axes.unicode_minus'] = Falseaverage = 0;
x = numpy.linspace(average-3,average+3,50)
print(x)  # 我们就得到了 50个数# 现在定义一个 二元函数 公式
y1 = 3* x **2 +1   # y此时也是一个数组
y2 = 3* x **2 + 4*x + 1# 开始使用画图工具画图  画图工具的包是 matplotlib 里面的 pyplot模块的 plot方法
mp.plot(x,y1,label="line1")
# 上面我已经实现了在图片上面画一条函数图像 现在我再在图像添加一条线
mp.plot(x,y2,color="red",label="line2",linestyle="-.")# 让前面的label生效
mp.legend()
# 添加一个标题
mp.title("二元函数图像")
# 让图像显示出来
mp.show()# 还用很多pyplot画图的方法和属性 可以参考 菜鸟教程https://www.runoob.com/matplotlib/matplotlib-line.html

注意事项

使用代码前一定要导包
这里的两个函数都比较简单就没有用到其他的数学函数库
如果需要使用积分,PI,开方等一些比较负责的函数可以使用别的一些函数库
scipy:建立在numpy之上可以提供积分最优化统计和一些专用函数

python绘制一个简单的函数图像使用到了matplotlib库和numpy库相关推荐

  1. python实现一个简单的【图像中物体坐标】标注小工具

    有时候需要对于数据集进行预处理,通过标注获取坐标信息,再进行后续的操作.使用python能够快速读取图片,并能够通过人工标注,记录一下每个点的横竖坐标,如下记录学习笔记. 参考链接:https://l ...

  2. Python绘制正弦、余弦函数图像

    题目要求: 将两条线绘制在一幅图像中,要求: x 为从-5到5,间隔为0.1: y1 为: sin(x) y2 为: cos(x) 两条线用不同的颜色标记出来 import numpy as np i ...

  3. 用python绘制一个简单正三角形

    代码如下: #利用turtle绘制正三角形 from turtle import* #导入turtle库 pencolor('red')#设置画笔颜色 pensize(8) #画笔大小 fillcol ...

  4. python绘制条形图用什么函数_Python绘制正余弦函数图像完整代码

    通过python绘制正弦和余弦函数,从默认的设置开始,一步一步地调整改进,让它变得好看,变成我们初高中学习过的图象那样.通过这个过程来学习如何进行对图表的一些元素的进行调整. 01. 简单绘图 mat ...

  5. python怎么画简单图片-Python绘制简易的二维图像

    大家好,我是飞向天空的牛. 最近学习了一下用Python绘制简易的二维图像,代码如下图所示:绘图代码 文本如下: import matplotlib.pyplot as plt import nump ...

  6. python画曲线-Python绘制各种简单优美曲线

    原标题:Python绘制各种简单优美曲线 matplotlib是著名的Python绘图库,它提供了一整套绘图API,十分适合交互式绘图.,解决数据分析和可视化问题,其实也是Python的拿手好戏.另外 ...

  7. 用python做一个简单GUI小软件

    用python做一个简单软件 前言 这是一个课设,用python做一个扫描王软件 我主要做的GUI部分,记录分享一下.也是第一次用python做小软件,python的方便果然是名不虚传 遇到问题 1. ...

  8. python推荐系统-利用python构建一个简单的推荐系统

    摘要: 快利用python构建一个属于你自己的推荐系统吧,手把手教学,够简单够酷炫. 本文将利用python构建一个简单的推荐系统,在此之前读者需要对pandas和numpy等数据分析包有所了解. 什 ...

  9. 基于python的系统构建_利用python构建一个简单的推荐系统

    摘要: 快利用python构建一个属于你自己的推荐系统吧,手把手教学,够简单够酷炫. 本文将利用python构建一个简单的推荐系统,在此之前读者需要对pandas和numpy等数据分析包有所了解. 什 ...

最新文章

  1. python做电脑软件-程序员带你十天快速入门Python,玩转电脑软件开发(一)
  2. pythonsuper多重继承_小白都能理解的Python多继承
  3. String与Date转换
  4. LeetCode——数学
  5. 小波相干wtc matlab,实现时间序列的小波相干性分析,并画出图谱
  6. Go语言内置的基础类型
  7. 机器学习监督学习之分类算法---朴素贝叶斯理论知识
  8. Java 清除指定目录文件夹下文件
  9. linux redis 启动_Redis系列:单机主从模式搭建
  10. 直线扫描转换-DDA算法
  11. GB2312-80 汉字机内码
  12. 微机原理 寻址方式 及基于EMU8086的用例
  13. [C++] 中的trivial destructor
  14. 使用video.js 播放youtube视频——踩坑记1
  15. 浙江省高等学校教师教育理论培训上机考试
  16. 软件测试转行跳槽必看问题解答
  17. JavaScript入门 轮播/表单验证 Day17
  18. zorro佐罗煤油_佐罗煤油和zippo对比
  19. 2018考研数学一解析 ​​​
  20. IDEA运行tomcat时,控制台红色中文乱码的解决办法

热门文章

  1. acadres.dll文件丢失怎么办?怎么去修复?
  2. php中empty与isset的区别,再谈php中empty与isset区别详解
  3. 【小技巧】通过MATLAB检测工程中是否有文件夹,并创建文件夹
  4. 简单易懂的XPT2046触摸屏驱动
  5. qt linux 修改系统时间,linux改变系统时间
  6. python 用turtle模块画一个中国结!附代码、注释
  7. 旺旺聊天记录解码(转PEDIY)
  8. JavaScript的三种弹框
  9. 华为android系统手机图片,你的华为手机会出现奇怪的照片吗?关掉三个功能,从源头解决问题...
  10. 如何完全去掉visio图中的阴影