经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » 程序设计 » Python » 查看文章
利用python绘制线型图
来源:jb51  时间:2022/6/20 8:40:27  对本文有异议

用法:

  1. matplot.pyplot.plot(*args, scalex=True, scaley=True, data=None, **kwargs)

参数解释:

x,y

  1. import numpy as np
  2. import matplotlib.pyplot as plt
  3.  
  4. x = np.arange(0.2, 2.0, 0.01)
  5. y1 = np.sin(2*np.pi*x)
  6. y2 = np.sin(4*np.pi*x)
  7.  
  8. plt.figure(1)
  9. plt.subplot(211)
  10. plt.plot(x,y1)
  11.  
  12. plt.subplot(212)
  13. plt.plot(x,y2)
  14. plt.show()

color

Colors的值:

  1. import numpy as np
  2. import matplotlib.pyplot as plt
  3.  
  4. # 需要解释下,下面两行代码是防止出现中文时,会报警告
  5. # 因为我们的title里面写的是中文
  6. plt.rcParams['font.family'] = 'SimHei'
  7. plt.rcParams['axes.unicode_minus']=False
  8. x = np.arange(0.2, 2.0, 0.01)
  9. y1 = np.sin(2*np.pi*x)
  10. y2 = np.sin(4*np.pi*x)
  11.  
  12. plt.figure(1)
  13. plt.subplot(211)
  14. plt.title('不添加颜色')
  15. plt.plot(x,y1)
  16.  
  17. plt.subplot(212)
  18. plt.title('添加颜色')
  19. plt.plot(x,y2,color='c')
  20. plt.show()

linstyle

  1. 'b' # blue markers with default shape
  2. 'or' # red circles
  3. '-g' # green solid line
  4. '--' # dashed line with default color
  5. '^k:' # black triangle_up markers connected by a dotted line
  1. import numpy as np
  2. import matplotlib.pyplot as plt
  3.  
  4. plt.figsize=((10,8))
  5. plt.rcParams['font.family'] = 'SimHei'
  6. plt.rcParams['axes.unicode_minus']=False
  7.  
  8. x = [1, 2, 3, 4]
  9. y = [1, 4, 9, 16]
  10.  
  11. plt.subplot(221)
  12. plt.title('样式: -')
  13. plt.plot(x,y,'-')
  14.  
  15. plt.subplot(222)
  16. plt.title('样式: --')
  17. plt.plot(x,y,'--')
  18.  
  19. plt.subplot(223)
  20. plt.title('样式: -.')
  21. plt.plot(x, y, '-.')
  22.  
  23. plt.subplot(224)
  24. plt.title('样式: :')
  25. plt.plot(x, y, ':')
  26. plt.show()

缩写方式

  1. import numpy as np
  2. import matplotlib.pyplot as plt
  3. x = [1, 2, 3, 4]
  4. y = [1, 4, 9, 16]
  5. plt.subplot()
  6. # 线形状 '-',颜色'g'
  7. plt.plot(x, y, '-g')
  8. plt.show()

marker, markersize

marker在scatter里面我已经有所解释过了,有好多种情况,可以在scatter散点图这里会将颜色和marker连接起来,可以有个很清楚的了解,并且较为清楚,也是缩写

  1. import matplotlib.pyplot as plt
  2. plt.figsize=((12,6))
  3. plt.rcParams['font.family'] = 'SimHei'
  4. plt.rcParams['axes.unicode_minus']=False
  5. x = [1, 2, 3, 4]
  6. y = [1, 4, 9, 16]
  7. plt.subplot(131)
  8. plt.title('默认情况')
  9. plt.plot(x, y)
  10.  
  11. plt.subplot(132)
  12. plt.title('红色圆圈')
  13. # marker为o 颜色r
  14. plt.plot(x, y, 'or')
  15.  
  16. plt.subplot(133)
  17. plt.title('正三角黑色')
  18. # marker为^ 颜色k->black
  19. plt.plot(x, y, '^k')
  20. plt.show()

label

标签,这个在所有图形中都可以使用,在这里展示下,包括之前的alpha也是,都所属**kwargs里面,在任何绘图中都可以添加,legend为图例

  1. import matplotlib.pyplot as plt
  2. import numpy as np
  3.  
  4. x = np.linspace(-np.pi/2, np.pi/2, 31)
  5. y = np.cos(x)**3
  6.  
  7. # 1) remove points where y > 0.7
  8. x2 = x[y <= 0.7]
  9. y2 = y[y <= 0.7]
  10.  
  11. # 2) mask points where y > 0.7
  12. y3 = np.ma.masked_where(y > 0.7, y)
  13.  
  14. # 3) set to NaN where y > 0.7
  15. y4 = y.copy()
  16. y4[y3 > 0.7] = np.nan
  17.  
  18. plt.plot(x*0.1, y, 'o-', color='lightgrey', label='No mask')
  19. plt.plot(x2*0.4, y2, 'o-', label='Points removed')
  20. plt.plot(x*0.7, y3, 'o-', label='Masked values')
  21. plt.plot(x*1.0, y4, 'o-', label='NaN values')
  22. plt.legend()
  23. plt.show()

下面就是一些案例

一次性绘制三个线条图

  1. import numpy as np
  2. import matplotlib.pyplot as plt
  3. t = np.arange(0., 5., 0.2)
  4. # 红色虚线,蓝色方块,浅蓝六边形
  5. plt.plot(t, t, 'r--', t, t**2, 'bs', t, t**3, 'cH')
  6. plt.show()

  1. import numpy as np
  2. import matplotlib.pyplot as plt
  3. x1 = np.linspace(0.0, 5.0)
  4. y1 = np.cos(2 * np.pi * x1) * np.exp(-x1)
  5. x2 = np.linspace(0.0, 2.0)
  6. y2 = np.cos(2 * np.pi * x2)
  7. plt.subplot(211)
  8. plt.plot(x1, y1, 'o-')
  9. plt.subplot(212)
  10. plt.plot(x1, y1, '.-')
  11. plt.show()

到此这篇关于利用python绘制线型图的文章就介绍到这了,更多相关python线型图内容请搜索w3xue以前的文章或继续浏览下面的相关文章希望大家以后多多支持w3xue!

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号