import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
n = 1024
# 平均值0 方差1 n個 正态分布随機數
X = np.random.normal(0, 1, n)
Y = np.random.normal(0, 1, n)
T = np.arctan2(Y, X)# for color value
plt.scatter(X, Y, s=75, c= T, alpha=0.5)
plt.xlim((-1.5, 1.5))
plt.ylim((-1.5, 1.5))
plt.xticks(())# 隐藏所有的 橫坐标值
plt.yticks(())# 隐藏所有的 縱坐标值
plt.show()
二、柱狀圖
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
n = 12
# 平均值0 方差1 n個 正态分布随機數
X = np.arange(n)
Y1 = (1 - X / float(n)) * np.random.uniform(0.5, 1.0, n)
Y2 = (1 - X / float(n)) * np.random.uniform(0.5, 1.0, n)
# 正負号 表示在橫坐标軸的上方還是下方
plt.bar(X, +Y1, facecolor='#9999ff', edgecolor='white')
plt.bar(X, -Y2, facecolor='#ff9999', edgecolor='white')
print("==============每一柱上加數字================")
# zip 每一次循環取出 x,y兩個值
for x,y in zip(X, Y1):
# 在 對應的柱的上方一點加上對應數字,對 y保留兩位小數
# 橫向使用center 居中對齊,縱向使用boottom 底部對齊
plt.text(x , y + 0.05, '%.2f' % y, ha = 'center', va= 'bottom')
for x,y in zip(X, Y2):
# 在 對應的柱的上方一點加上對應數字,對 y保留兩位小數
# 橫向使用center 居中對齊,縱向使用top頂部對齊
# 注意:y為負值
plt.text(x , -y - 0.05, '-%.2f' % y, ha = 'center', va= 'top')
plt.xlim(-.5, n)
plt.xticks(())
plt.ylim(-1.25, 1.25)
plt.yticks(())
plt.show()