使用matplotlib

时间:2017-02-17 06:54:22

标签: numpy matplotlib ipython jupyter

我有一个从E ^ -35到E ^ -17的数据,相对于plt.arange(0,1,0.01,float)绘制

但结果出来并不像我预期的那样

它是在x = 0

处的散点图
fig0 = plt.figure()
ax0 = fig0.add_subplot( 111 )
ax0.scatter( data, np.arange(0,1,0.01, float) )
plt.show()

test

我的数据是

[8.1374114674802597e-34,3.1029550981861939e-33,1.1597885475591305e-32,4.249093142425394e-32,1.5259060563175121e-31,5.3712263279542833e-31,1.8532466296313074e-30,6.2676840470669414e-30,2.0777585717378257e-29,6.7514519329613693 e-29,2.1503709667687085e-28,6.7134182663760851e-28,2.0544147967282703e-27,6.1623544285318554e-27,1.8118378266076862e-26,5.2216298447246435e-26,1.4750507130901448e-25,4.0843404182592419e-25,1.1085391173145788e-24,2.9491320831520085 e-24,7.6904461440246843e-24,1.9657258864483237e-23,4.9250255625136312e-23,1.2095062905130028e-22,2.9115341220471074e-22,6.8698894333261671e-22,1.5888822776169327e-21,3.6020339750412715e-21,8.0042012411717219e-21,1.7434211238444047 E-20,3.7222086900772078e-20,7.7895656892566942e-20,1.5978642487125893e-19,3.2127773238718804e-19,6.3319209199795436e-19,1.2232196500900031e-18,2.3162611675507162e-18,4.2991709423185681e-18,7.8216073741229478e-18,1.3948304504692927 e-17,2.4381529062694997e-17,4.17748180918 68502e-17,7.0158824965566103e-17,1.1549525882654105e-16,1.8636318176073254e-16,2.9476111245571357e-16,4.5697702677808896e-16,6.9443669074066644e-16,1.0343917791808785e-15,1.5102594858792363e-15,2.1613853049710207e-15,3.0319841524935535 E-15,4.16903719647446e-15,5.6189960042533021e-15,7.423279057200236e-15,9.6127347995666781e-15,1.2201472498036293e-14,1.5180694486447218e-14,1.8513355693857711e-14,2.2130578197031099e-14,2.5930714678655535e-14,2.978175748164367 e-14,3.357430377313704e-14,3.6996814006944967e-14,4.00166212608403043e-14,4.2426262158113436e-14,4.1090107652324378e-14,4.41111923712397478e-14,4.4843165941867072e-14,4.3887918667758544e-14,4.2102493249632879e-14,3.9580991901231432 E-14,3.6490163131389593e-14,3.2967116699543334e-14,2.9194445863162421e-14,2.534157584536242e-14,2.1561606171497332e-14,1.7982195347686173e-14,1.4700036856351123e-14,1.1778995241752241e-14,9.2515005595000464e-15,7.1224633450482873 e-15,5.3748008438286255e-15,3.97565454 92025782e-15,2.8824980048934251e-15,2.048535527467194e-15,1.427026688747923e-15,9.7439444890073833e-16,6.5151518448657109e-16,4.2784114065927355e-16,2.7512343183374094e-16,1.7341502674112552e-16,1.0714205813048751e-16,6.4885454703296974 e-17,3.8516678681795513e-17,2.2411164278722972e-17,1.2781861811609836e-17,7.1455872617985816e-18,3.9155777030446838e-18,2.1031385150348866e-18]

1 个答案:

答案 0 :(得分:0)

Matplotlib还没有能够选择线性比例来很好地匹配您的数据。由于您的x坐标数据范围很广,因此对数刻度可能更适合您:

fig0 = plt.figure()
ax0 = fig0.add_subplot( 111 )
ax0.scatter( data, np.arange(0,1,0.01, float) )
ax0.set_xlim(np.min(data), np.max(data))
ax0.set_xscale('log')
plt.show()

enter image description here