Advertisement
Guest User

Untitled

a guest
Mar 11th, 2018
22
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.10 KB | None | 0 0
  1. import numpy as np
  2. import matplotlib
  3. import matplotlib.pyplot as plt
  4.  
  5. #S3  417 http://browser.geekbench.com/geekbench3/8570680
  6. #S4: 716 https://browser.geekbench.com/android_devices/108
  7. #S5: 931 https://browser.geekbench.com/android_devices/163
  8. #S6: 1295 https://browser.geekbench.com/android_devices/209
  9. #S7: 1811 https://browser.geekbench.com/android_devices/220
  10. #S8: 1953 https://browser.geekbench.com/android_devices/376
  11. # S9: 3739 https://www.tek.no/artikler/test-samsung-galaxy-s9/431900/2
  12. samsung_scores = np.array([417, 716, 931, 1295, 1811, 1953, 3739])
  13.  
  14. # Release dates of Galaxy S (Rounded down to month)
  15. # (source: google "Samsung Galaxy S<version> release date")
  16. samsung_versions = np.array([2012+5./12, 2013+4/12., 2014+4/12., 2015+4/12.,
  17.                              2016+3./12, 2017+4/12., 2018+3/12.])
  18.  
  19. p_samsung =  plt.plot(samsung_versions, samsung_scores, '*',
  20.          label='Samsung Galaxy S <Year>')
  21.  
  22. # Now we fit the data, except the latest, and see how good a prediction it is
  23. samsung_versions_shifted = samsung_versions - samsung_versions[0]*np.ones_like(samsung_versions)
  24. samsung_poly_coeff = np.polyfit(samsung_versions_shifted[:-2],
  25.     np.log(samsung_scores[:-2]), 1)
  26.  
  27. print(np.exp(samsung_poly_coeff[1])*np.exp(samsung_versions_shifted*samsung_poly_coeff[0]))
  28.  
  29. plt.plot(samsung_versions,
  30.          np.exp(samsung_poly_coeff[1])*np.exp(samsung_versions_shifted*samsung_poly_coeff[0]),
  31.          '--', color=p_samsung[0].get_color(),
  32.          label='$%.2f (%.2f)^{\\mathrm{Year} - %.2f}$'
  33.          % (np.exp(samsung_poly_coeff[1]),
  34.           np.exp(samsung_poly_coeff[0]),
  35.           samsung_versions[0]))
  36. # iphone 4s 284 https://browser.geekbench.com/ios_devices/6
  37. # iphone 5 754 https://browser.geekbench.com/ios_devices/20
  38. # iphone 5s 1267 https://browser.geekbench.com/ios_devices/28
  39. # iphone 6 1360 https://browser.geekbench.com/ios_devices/33
  40. # iphone 6s 2214 https://browser.geekbench.com/ios_devices/38
  41. # iphone 7 3388 https://browser.geekbench.com/ios_devices/44
  42. # iphone 8 4217 https://browser.geekbench.com/ios_devices/50
  43.  
  44. iphone_scores = np.array([284, 754, 1267, 1360, 2214, 3388, 4217])
  45.  
  46. # Release dates of iPhone (Rounded down to month)
  47. # (source: google "Iphone <version> release date")
  48. iphone_versions = np.array(
  49.     [2011. + 10/12., 2012 + 9/12., 2013+ 9/12., 2014+9/12.,
  50.                    2015+9/12., 2016+9/12., 2017+9/12.])
  51.  
  52.  
  53. p_apple = plt.plot(iphone_versions, iphone_scores,
  54.                    'o', label='Apple iPhone <Year>')
  55.  
  56. iphone_versions_shifted = iphone_versions - iphone_versions[0]*np.ones_like(iphone_versions)
  57. apple_poly_coeff = np.polyfit(iphone_versions_shifted[:-2],
  58.     np.log(iphone_scores[:-2]), 1)
  59.  
  60.  
  61. plt.plot(iphone_versions,
  62.          np.exp(apple_poly_coeff[1])*np.exp(iphone_versions_shifted*apple_poly_coeff[0]),
  63.          '--', color=p_apple[0].get_color(),
  64.          label='$%.2f (%.2f)^{\\mathrm{Year} - %.2f}$'
  65.          % (np.exp(apple_poly_coeff[1]),
  66.           np.exp(apple_poly_coeff[0]),
  67.           iphone_versions[0]))
  68.  
  69.  
  70. plt.xlabel('Year')
  71. plt.ylabel('Geekbench 4 Single score')
  72. plt.legend()
  73. plt.grid("on")
  74. plt.show()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement