当前位置:   article > 正文

Python最全的曲线绘制示例_python 绘制曲线

python 绘制曲线

废话少说,直接上代码:

  1. import numpy as np
  2. import pandas as pd
  3. import matplotlib.pylab as plt
  4. from pylab import *
  5. from proplot import rc
  6. #设置坐标刻度在内侧显示,需放在程序的最前面才可以生效
  7. plt.rcParams['xtick.direction'] = 'in' # 将x周的刻度线方向设置向内
  8. plt.rcParams['ytick.direction'] = 'in' # 将y轴的刻度方向设置向内`
  9. #设置在图形中可显示中文
  10. plt.rcParams['font.sans-serif'] = ['SimHei']
  11. #字号和线宽用于对绘制曲线中字号和线宽的设置
  12. zihao = 16
  13. xiankuan = 0.5
  14. # 统一设置轴刻度标签的字体大小
  15. rc['tick.labelsize'] = zihao
  16. # 统一设置xy轴名称的字体大小
  17. rc["axes.labelsize"] = zihao
  18. rc["axes.titlesize"] = zihao
  19. # 统一设置轴刻度标签的字体粗细
  20. rc["axes.labelweight"] = "light"
  21. # 统一设置xy轴名称的字体粗细
  22. rc["tick.labelweight"] = "bold"
  23. #设置图例的字体大小
  24. plt.rc("legend", fontsize=zihao)
  25. #建立一个图形画布
  26. fig, axs = plt.subplots()
  27. #在画布上绘制两条曲线
  28. axs.plot(np.arange(len(y_test)), y_test[:, 0], '.-', color='red', label='真实值', linewidth=xiankuan,markersize="2") #第一条曲线
  29. axs.plot(np.arange(len(y_test)), y_test_pred[:, 0], '--', color='blue', label='CNN-BiLSTM模型预测值', linewidth=xiankuan, markersize="2") #第二条曲线
  30. #设置x轴和y轴的标签
  31. axs.set_xlabel('样本序号',y=-0.2) #y用来调整x轴标签显示的上下位置,还可以通过设置x的值来调整左右的位置
  32. axs.set_ylabel('出口NOx排放量(mg/$m^{3}$)') #$$:latex中特殊字符的显示,此处为m的3次方的显示
  33. #设置显示图例
  34. plt.legend()
  35. # 调整 x 轴和 y 轴的范围
  36. axs.set_xlim(left=0, right=5000)
  37. axs.set_ylim(bottom=0, top=180)
  38. # 将 x 轴和 y 轴的零点对齐
  39. axs.spines['left'].set_position(('data', 0))
  40. axs.spines['bottom'].set_position(('data', 0))
  41. # 获取当前的刻度列表
  42. x_ticks = axs.get_xticks()
  43. y_ticks = axs.get_yticks()
  44. x_ticks = np.arange(0, x_ticks[-1], 500) # 生成05500之间,步长为500的刻度值
  45. y_ticks = np.arange(0, y_ticks[-1], 20) # 生成05500之间,步长为500的刻度值
  46. # 去除非 5 的倍数的刻度线
  47. x_ticks = [tick if (tick % 500 == 0) else None for tick in x_ticks]
  48. y_ticks = [tick if (tick % 20 == 0) else None for tick in y_ticks]
  49. # 设置新的刻度列表
  50. plt.gca().xaxis.set_major_locator(plt.FixedLocator(x_ticks)) # 设置主刻度位置为 01
  51. plt.gca().xaxis.set_minor_locator(plt.NullLocator()) # 隐藏次刻度
  52. plt.gca().tick_params(axis='x', which='both', bottom=True, top=False, labelbottom=True) # 只显示底部刻度线和标签
  53. plt.gca().yaxis.set_major_locator(plt.FixedLocator(y_ticks)) # 设置主刻度位置为 01
  54. plt.gca().yaxis.set_minor_locator(plt.NullLocator()) # 隐藏次刻度
  55. plt.gca().tick_params(axis='y', which='both', bottom=True, top=False, labelbottom=True) # 只显示底部刻度线和标签
  56. #设置上边界和右边界不显示边框
  57. axs.spines['top'].set_visible(False)
  58. axs.spines['right'].set_visible(False)
  59. #设置图例不显示边框
  60. axs.legend(frameon=False)
  61. #设置不显示背景网格线
  62. axs.grid(False)
  63. #开启图形显示
  64. plt.show()

运行示例:

注意,本文代码无法直接运行,只是展示了在使用Python绘制曲线图形是的一些曲线形式调整方法,使其更美观,更满足于论文中需要。代码中的x,y的数据是本人原始数据,大家在使用的过程中需要换成自己的数据,不然是运行不了的。 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/人工智能uu/article/detail/855764
推荐阅读
相关标签
  

闽ICP备14008679号