资讯专栏INFORMATION COLUMN

python数学建模Matplotlib绘制方法介绍

89542767 / 298人阅读

  小编写这篇文章的一个主要目的,主要是来给大家去做一个相关的自我介绍,介绍关于python是怎么进行数学建模的,怎么使用Matpolibd呢?具体的使用方法是什么呢?下面就给大家详细的去做一个解答。


  Matplotlib简介


  #Matplotlib简介:
  '''
  使用Matplotlib在Python中创建图表【Matplotlib是用于创建图表的Python库】
  Matplotlib是一个非常强大的Python画图工具,我们可以使用该工具将很多数据通过图表的形式更直观的呈现出来。
  它能让使用者很轻松地将数据图形化,并且提供多样化的输出格式【可创建散点图,折线图,条形图和饼图等】
  Matplotlib可以用来绘制各种静态,动态,交互式的图表。
  注:在使用之前需在终端安装Matplotlib
  安装命令为:pip install matplotlib
  Matplotlib应用:
  Matplotlib通常与NumPy和SciPy(Scientific Python)一起使用,这种组合广泛用于替代MatLab,
  是一个强大的科学计算环境,有助于我们通过Python学习数据科学或者机器学习
  '''
  #查看版本
  import matplotlib
  print(matplotlib.__version__)


  Matplotlib散点图


  #Matplotlib散点图
  #散点图是一种图形或数学图,使用笛卡尔坐标显示一组数据的两个变量的值
  #使用时,我们可以使用import导入pyplot库,并设置一个别名plt
  import matplotlib.pyplot as plt
  x_hz=[i for i in range(10)]#时间数据
  y_zz=[6,14,21,36,45,52,66,72,88,92]#价格数据
  plt.title('price for 10 years')#设置图表标题
  plt.scatter(x_hz,y_zz,color='blue',marker='x',label='item 1')#scatter()功能绘制散点图
  plt.xlabel('year')#设置x轴标签
  plt.ylabel('price')#设置y轴标签
  plt.grid(True)#grid()功能显示网格
  plt.legend()#legend()功能在轴上放置图例
  plt.show()#显示图表


  运行效果如下:

01.png

  Matplotlib Pyplot


  #Matplotlib Pyplot
  '''
  Pyplot是Matplotlib的子库,提供了和MATLAB类似的绘图API。
  Pyplot是常用的绘图模块,能很方便让用户绘制2D图表。
  Pyplot包含一系列绘图函数的相关函数,每个函数会对当前的图像进行一些修改
  '''
  import matplotlib.pyplot as plt
  import numpy as np
  x_d=np.array([0,8])
  y_d=np.array([0,120])
  plt.plot(x_d,y_d)#plot()函数是绘制二维图形的最基本函数
  plt.show()


  运行效果如下:

02.png

  关于plot()


  #关于plot()
  '''
  plot()用于画图它可以绘制点和线,语法格式如下:
  #画单条线
  plot([x],y,[fmt],*,data=None,**kwargs)
  #画多条线
  plot([x],y,[fmt],[x2],y2,[fmt2],...,**kwargs)
  参数说明:
  x,y:点或线的节点,x为x轴数据,y为y轴数据,数据可以列表或数组。
  fmt:可选,定义基本格式(如颜色、标记和线条样式)。
  **kwargs:可选,用在二维平面图上,设置指定属性,如标签,线的宽度等。
  颜色字符:'b'蓝色,'m'洋红色,'g'绿色,'y'黄色,'r'红色,'k'黑色,'w'白色,'c'青绿色,'#008000'RGB颜色符串。多条曲线不指定颜色时,会自动选择不同颜色。
  线型参数:'‐'实线,'‐‐'破折线,'‐.'点划线,':'虚线。
  标记字符:'.'点标记,','像素标记(极小点),'o'实心圈标记,'v'倒三角标记,'^'上三角标记,'>'右三角标记,'<'左三角标记...等等
  '''
  #可使用o参数,表示一个实心圈的标记
  import matplotlib.pyplot as plt
  import numpy as np
  x_p=np.array([0,6])
  y_p=np.array([3,9])
  plt.plot(x_p,y_p,'o')
  plt.show()
  运行效果如下:
  绘制任意数量的点
  #绘制任意数量的点
  import matplotlib.pyplot as plt
  import numpy as np
  x_dp=np.array([1,3,5,7,9])
  y_dp=np.array([8,4,2,6,0])
  plt.plot(x_dp,y_dp)
  plt.show()


  运行效果如下:

03.png

  不指定x轴上的点,看看效果
  #不指定x轴上的点,看看效果
  import matplotlib.pyplot as plt
  import numpy as np
  yd=np.array([2,9])
  plt.plot(yd)
  plt.show()


  运行效果如下:

04.png

  再看看y更多值的效果


  #再看看y更多值的效果
  import matplotlib.pyplot as plt
  import numpy as np
  yd2=np.array([2,9,1,8,3,8])
  plt.plot(yd2)
  plt.show()
  运行效果如下:
  绘制正余弦图:
  #绘制正余弦图:
  import matplotlib.pyplot as plt
  import numpy as np
  x=np.arange(0,4*np.pi,0.1)
  y=np.sin(x)
  z=np.cos(x)
  plt.plot(x,y,x,z)
  plt.show()


  运行效果如下:

05.png

  两个数据集


  #两个数据集
  import matplotlib.pyplot as plt
  x_d1=[i for i in range(1,11)]
  y_d1=[2,32,41,6,15,34,34,23,12,9]
  x_d2=[i for i in range(1,11)]
  y_d2=[4,12,43,21,52,32,12,43,8,20]
  plt.title('Prices for 10 years')
  plt.scatter(x_d1,y_d1,color='darkblue',marker='x',label='item 1')
  plt.scatter(x_d2,y_d2,color='darkred',marker='x',label='item 2')
  plt.xlabel('Year')
  plt.ylabel('Price')
  plt.grid(True)
  plt.legend()
  plt.show()

  运行效果如下:

06.png

  Matplotlib绘图标记


  实心圆标记:
  #Matplotlib绘图标记
  #绘图过程可使用plot()方法的marker参数来定义标记
  #实心圆标记:
  import matplotlib.pyplot as plt
  import numpy as np
  yp=np.array([1,3,1,4,1,5,9,5,2,1])
  plt.plot(yp,marker='o')
  plt.show()


  运行效果如下:

07.png

  用*标记


  #用*标记
  import matplotlib.pyplot as plt
  import numpy as np
  yp2=np.array([2,3,2,43,23,12,3,4,12,43,12])
  plt.plot(yp,marker='*')
  plt.show()
  运行效果如下:
  用下箭头标记
  #用下箭头标记
  import matplotlib.pyplot as plt
  import matplotlib.markers
  plt.plot([1,3,5],marker=matplotlib.markers.CARETUPBASE)
  plt.show()


  运行效果如下:

08.png

  Matplotlib折线图


  #Matplotlib折线图
  #折线图是一种显示图表的图表,该信息显示为一系列数据点,这些数据点通过直线段相连,称为标记
  #正弦波折线图:
  import matplotlib.pyplot as plt
  import numpy as np
  t=np.arange(0.0,4.0,0.01)#arange()函数返回给定间隔内的均匀间隔的值列表
  s=np.sin(2.5*np.pi*t)
  #plot()功能绘制折线图
  plt.plot(t,s)
  plt.title('Wave')
  plt.xlabel('Time')
  plt.ylabel('Vol')
  plt.grid(True)
  plt.show()

  运行效果如下:

09.png

  fmt参数


  #fmt参数
  '''
  fmt参数
  fmt参数定义了基本格式,如标记、线条样式和颜色。
  fmt='[marker][line][color]'
  如o:r【o表示实心圆标记,:表示虚线,r表示颜色为红色】
  :代表虚线-代表实线
  --代表破折线-.代表点划线
  除了黑色是用k表示,其他颜色均用各自英文首字母表示
  '''
  import matplotlib.pyplot as plt
  import numpy as np
  ft=np.array([3,9,2,6])
  plt.plot(ft,'o:r')
  plt.show()

  运行效果如下:

10.png

  标记大小与颜色


  设置标记大小:
  #标记大小与颜色
  '''
  标记大小与颜色
  我们可以自定义标记的大小与颜色,使用的参数分别是:
  markersize,简写为ms:定义标记的大小。
  markerfacecolor,简写为mfc:定义标记内部的颜色。
  markeredgecolor,简写为mec:定义标记边框的颜色。
  '''
  #设置标记大小:
  import matplotlib.pyplot as plt
  import numpy as np
  dx=np.array([2,32,1,43,12,12,3])
  plt.plot(dx,marker='o',ms=20)
  plt.show()
  运行效果如下:
  设置标记内部颜色:
  #设置标记内部颜色:
  import matplotlib.pyplot as plt
  import numpy as np
  nys=np.array([2,3,32,12,43,12,9])
  plt.plot(nys,marker='o',ms=20,mfc='r')
  plt.show()


  运行效果如下:

11.png

  Matplotlib条形图


  #Matplotlib条形图
  #条形图显示带有矩形条的分组数据,其长度与它们代表的值成比例【条形图可以垂直或水平绘制】
  import matplotlib.pyplot as plt
  import matplotlib.style as sty
  sty.use('ggplot')
  x=[i for i in range(1,4)]
  y=[12,8,4]
  fuck,ax=plt.subplots()#subplots()函数返回图形和轴对象
  ax.bar(x,y,align='center')#bar()功能生成条形图
  ax.set_title('Olympic Gold for London')
  ax.set_ylabel('Gold medals')
  ax.set_xlabel('Countries')
  ax.set_xticks(x)
  ax.set_xticklabels(('China','UK','USA'))
  plt.show()


  综上所述,这篇文章就给大家介绍到这里了,希望可以给大家带来更多帮助。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/128403.html

相关文章

  • ❤️【python入门项目】在 Python 中创建条形图追赶动画(评论区送书)❤️

    动画是使可视化更具吸引力和用户吸引力的好方法。它帮助我们以有意义的方式展示数据可视化。Python 帮助我们使用现有的强大 Python 库创建动画可视化。Matplotlib是一个非常流行的数据可视化库,通常用于数据的图形表示以及使用内置函数的动画。 直接跳到末尾 去评论区领书 ? 在 Python 中创建条形图追赶动画(评论区送书) ? 方法一:使用 pause() 函数? 方法二:使用 F...

    h9911 评论0 收藏0
  • 数学Python有机结合及统计学、微积分、线性代数相关资源、图形软件

    摘要:微积分微积分的课程我们也同样是推荐和的课程。还有一个斯坦福大学的统计学习入门英文字幕相当不错。所以,除了绘制数学图形外,学习数学就应该完全与编程有机结合。 无论是三大数学软件Matlab(通信、控制等工程例外)、Maple、Mathematica,还是三大统计软件Spass、Stata、SAS,这些可视化的软件本身就是编程的一个体现,它们在一定程度上降低了我们使用数学的门槛,但另一方面...

    Java3y 评论0 收藏0
  • 【正经的AI on Python入门系列】1.2 斗图工具的优化——文本宽度自适应(来做点小数据分析

    摘要:在上一篇文章图工具的优化实现文本居中中,我们已经实现了对插入字体的左中右对齐显示,那因为上期文章混进去了不少语法讲解,所以后面的内容就顺延到这啦,哈哈哈。 showImg(https://segmentfault.com/img/bVbeIu4?w=250&h=250); 在上一篇文章【图工具的优化——实现文本居中】中,我们已经实现了对插入字体的左中右对齐显示,那因为上期文章混进去了不...

    fireflow 评论0 收藏0
  • Python绘制精美图表之双柱形图

    摘要:图表是比干巴巴的表格更直观的表达,简洁有力。当我们想关注比数值本身更多的信息像数值的变化对比或异常,图表就非常有用了。把数值转化为图片要依赖第三方库的帮忙,在之中最好的图表库叫。 图表是比干巴巴的表格更直观的表达,简洁、有力。工作中经常遇到的场景是,有一些数值需要定时的监控,比如服务器的连接数、活跃用户数、点击某个按钮的人数,并且通过邮件或者网页展示出来。当我们想关注比数值本身更多的信...

    beita 评论0 收藏0
  • Python学习笔记:数据可视化(一)

    摘要:当数据发生变化时,这种演变过程随之发生。是一种统计报告图,由一系列高度不等的纵向条纹或线段表示数据分布的情况。 showImg(https://segmentfault.com/img/bVbnkP1?w=751&h=558); python相关 基础概念 数据:离散的,客观事实的数字表示 信息:处理后的数据,为实际问题提供答案   - 为数据提供一种关系或一个关联后,数据就成了信...

    Crazy_Coder 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<