AutoLeaders算法组——matplotlib库学习笔记(1)
文章目录
- AutoLeaders算法组——matplotlib库学习笔记(1)
-
-
- 1.plot
-
- 2.设置坐标轴
-
- 3.设置图例
- 4.绘制柱状图
1.plot
绘制线性表
import numpy as np
import matplotlib.pyplot as plt
a = np.arange(-100, 101)
y = a**3
plt.plot(a, y)
plt.show()

多个figure
plt.figure(num=4)
plt.plot(a, y2)
plt.plot(b, y1)
plt.show()

2.设置坐标轴
设置取值范围
a = np.linspace(-5, 5, 50)
print(a)
y1 = a**2
y2 = a+1
plt.plot(a, y1, color='b')
plt.plot(a, y2, color='r')
plt.xlim(-2, 3)
plt.ylim(0, 6)
plt.show()

设置行或者列的标签
plt.xlabel('i am handsone')
plt.ylabel('you too!')
new_ticks = (np.linspace(-2, 3, 4))
plt.xticks(new_ticks)
plt.yticks([2, 4, 6], ['not bad', 'good', 'really good'])

ax = plt.gca()
ax.xaxis.set_ticks_position('bottom')
ax.yaxis.set_ticks_position('left')
ax.spines['bottom'].set_position(('data', 0))
ax.spines['left'].set_position(('data', 0))

3.设置图例
plt.plot(a, y1, label='up')
plt.plot(a, y2, label='down')
plt.legend()
4.绘制柱状图
import matplotlib.pyplot as plt
x = range(6)
data = [0, 5, 10, 15, 20, 25]
plt.bar(x, data, color=['b', 'y'])
plt.grid(ls="--", alpha=0.5)
plt.legend()
plt.show()

n = 10
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='b', edgecolor='white')
plt.bar(X, -Y2, facecolor='y', edgecolor='white')
for x, y in zip(X, Y1):
plt.text(x, y + 0.03, '%.2f' % y, ha='center', va='bottom')
for x, y in zip(X, Y2):
plt.text(x, -y - 0.1, '%.2f' % y, ha='center', va='top')
plt.xticks()
plt.yticks()
plt.show()
