- 散点图
- plot可以实现,scatter也可以实现
- plot速度优于scatter,但是如果点的形式(大小和颜色)有差别就必须使用scatter
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 10, 100)
y = np.sin(x)
# 也可以实现散点图
plt.plot(x, y, 'o')
# 绘制散点图
plt.scatter(x, y)
plt.show()
- 不同形式的点绘制方法
import matplotlib.pyplot as plt
import numpy as np
np.random.seed(0)
x = np.random.rand(100)
y = np.random.rand(100)
size = np.random.rand(100)*1000
color = np.random.rand(100)
# s表示点的大小,c表示点的颜色,alpha表示透明度
# 点的个数要与点的颜色相同的,注意!!!!
# 点的个数与点的大小个数可以不一样,点的大小个数不同会循环设置点的大小,注意!!!!
plt.scatter(x, y, s=size, c=color, alpha=0.7)
plt.show()
- 添加图例
- legend:默认在左上角,通过loc进行修改
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 10, 100)
plt.plot(x, x+0, '--g', label='--g')
plt.plot(x, x+1, '-.r', label='-.r')
plt.plot(x, x+2, ':b', label=':b')
plt.plot(x, x+3, '.k', label=',k')
plt.plot(x, x+4, ',c', label=',c')
plt.plot(x, x+5, '*y', label='*y')
# 添加图例右下角lower right 左上角upper left 边框 透明度 阴影 边框宽度
plt.legend(loc='lower right', fancybox=True, framealpha=1, shadow=True, borderpad=1)
plt.show()
- 使用以下格式化字符。
字符 描述
‘-’ 实线样式
‘–’ 短横线样式
‘-.’ 点划线样式
‘:’ 虚线样式
‘.’ 点标记
‘,’ 像素标记
‘o’ 圆标记
‘v’ 倒三角标记
‘^’ 正三角标记
‘1’ 下箭头标记
‘2’ 上箭头标记
‘3’ 左箭头标记
‘4’ 右箭头标记
‘s’ 正方形标记
‘p’ 五边形标记
‘*’ 星形标记
‘h’ 六边形标记 1
‘H’ 六边形标记 2
‘+’ 加号标记
‘x’ X 标记
‘D’ 菱形标记
‘d’ 窄菱形标记
‘_’ 水平线标记
- 以下是颜色的缩写:
字符 颜色
‘b’ 蓝色
‘g’ 绿色
‘r’ 红色
‘c’ 青色
‘m’ 品红色
‘y’ 黄色
‘k’ 黑色
‘w’ 白色