Board logo

标题: 【己解决】50元求代码生成折线图 [打印本页]

作者: keshun    时间: 2021-4-19 16:38     标题: 【己解决】50元求代码生成折线图

本帖最后由 keshun 于 2021-4-20 00:48 编辑

具体报酬:50元人民币
支付方式:支付宝
联系方式:QQ:1397538658
有效期限:2021年4月25日之前。
需求描述:
(1)系统环境(Win10,中文版)
(2)python读取1.txt生成折线图保存到1.jpg


     J5M    J15M    J1H    J4H    J1D    J3D     J7D
0   24.71   73.85  60.22  60.27  19.79  52.50   93.95
0   73.92   94.59  72.92  62.82  24.46  55.33   83.02
0   85.34   96.25  75.79  63.50  27.09  56.93   78.46
0   83.51   92.19  75.21  63.43  34.20  61.18   90.96
0   91.05   95.25  76.94  63.71  35.08  61.74   97.95
0   97.14   98.17  76.90  63.91  35.72  62.16  101.31
0  106.46  103.54  82.95  64.83  37.45  63.17  102.64
0   95.57   96.23  80.72  64.48  40.21  64.82   95.59
0   49.05   75.22  70.83  63.01  40.41  64.95   88.90
0    2.92   58.13  65.88  62.23  43.40  66.70   83.79
0   -6.74   55.22  65.59  62.12  46.17  68.34   84.50
0   -3.46   57.07  66.66  62.24  46.32  68.41   53.25
0   20.22   67.22  70.77  62.78  51.42  71.42   47.67
0   -2.27   56.32  66.22  62.10  52.18  71.90   45.67
0  -12.00   29.86  55.33  60.52  54.51  73.26   46.09
0  -14.98    0.51  43.26  58.76  52.88  72.31   54.07
0  -14.66  -16.50  26.57  56.33  49.94  70.58   61.20
0  -12.90  -22.21  13.27  54.41  49.29  70.20   67.67
0  -10.67  -22.28  -0.92  52.35  50.91  71.14   72.66
0    2.33  -10.39   0.90  52.64  46.49  68.55   73.93

1.txt有200行(上面是其中20行),有7组数据生成7条线(数值-50--150之间)
作者: a20150604    时间: 2021-4-19 19:31

本帖最后由 a20150604 于 2021-4-19 19:53 编辑
  1. # encoding: utf-8
  2. import matplotlib.pyplot as plt
  3. # import matplotlib.pylab as plt
  4. from matplotlib.pyplot import figure
  5. import re
  6. o_img = '1.jpg'
  7. file = open('1.txt')    #打开文档
  8. data = file.readlines() #读取文档数据
  9. cnt_data_lines = len(data)-1
  10. print(cnt_data_lines)
  11. num_of_lines = 7
  12. arr_data = [[0 for i in range(cnt_data_lines)] for i in range(num_of_lines + 1)]
  13. arr_tit = [0 for j in range(num_of_lines)]
  14. strinfo = re.compile(r'\s+')    #
  15. i=1
  16. for num in data:
  17.     if i>1 :            # 数据区
  18.         arr_data[num_of_lines][i-2]=i-1
  19.         for j in range(num_of_lines):
  20.             arr_data[j][i-2]=float(strinfo.sub(',', num).split(',')[j+1])
  21.     else :
  22.         for j in range(num_of_lines):
  23.             arr_tit[j] = strinfo.sub(',', num).split(',')[j+1]
  24.     i+=1
  25. # plt.figure()
  26. plt.figure(figsize=(8, 6), dpi=80)
  27. plt.title('map')
  28. plt.xlabel('x label')
  29. plt.ylabel('y label')
  30. plt.xticks(arr_data[num_of_lines], arr_data[num_of_lines])  #, rotation='vertical'
  31. arr_p = [0 for j in range(num_of_lines)]
  32. for k in range(num_of_lines):
  33.     arr_p[k] , =  plt.plot(arr_data[num_of_lines], arr_data[k],label=arr_tit[k])
  34.     # plt.legend()
  35.     plt.legend(loc='best')
  36. plt.savefig(o_img)
  37. plt.show()
复制代码

作者: keshun    时间: 2021-4-20 00:48

本帖最后由 keshun 于 2021-4-20 03:39 编辑

回复 2# a20150604


    十分感谢!!
         20元追加个问题,通过上面代码生成的6个图,求合并成大图的代码
    图形排列:1.jpg,2.jpg,3.jpg
                  4.jpg,5.jpg,6.jpg
    合并成A.jpg

   麻烦你把支付宝帐号发消息我,70元转给你。




欢迎光临 批处理之家 (http://bathome.net./) Powered by Discuz! 7.2