1.matplotlib:功能很强大,非常多,代码量比较大
2.pyechart:经过很多的渲染,代码小一点,酷炫,动态交互效果
3.seaborn:基于matplotlib,数据分布,相关性分析,密度估计
4.pandas. 直接在pandas画,简单图表
读入图片
plt.imread(‘E:\123\ziliao’)
Matplotlib(基于数组绘图)
%matplotlib inline
import matplotlib
import matplotlib.pyplot as plt
matplotlib.rcParams[‘font.sans-serif’] = [‘KaiTi’] #用黑体显示中文楷体(修改字体的第一种方法)
matplotlib.rcParams[‘axes.unicode_minus’] = False #正常显示负号
修改字体的第二种方法:
myfont1 = matplotlib.font_manager.FontProperties(fname=r'C:\Windows\Fonts\STKAITI.TTF') # 修改字体
myfont2 = matplotlib.font_manager.FontProperties(fname=r'C:\Windows\Fonts\FZSTK.TTF') # 修改字体
plt.figure(figsize = (8, 4), dpi = 100) #创建画布
plt.title() #图标标题
plt.xlabel(("Time(s)" , fontsize=20 , color='r' , rotation=0) #添加x轴名称
plt.xlabel("Volt") #添加y轴名称
plt.xlim(-1 , 11) #规定x轴范围
plt.ylim(-1.2 , 1.2) #确定y轴范围
plt.xticks(np.arange(0,12,2) ,f ontsize=15 , rotation=30) #规定x轴刻度
plt.yticks([-1 , -0.5 , 0.0 , 0.5 , 1.0]) #规定y轴刻度
plt.plot(x , y , color = "red" , linewidth=2 , marker='*' , label = "$sin(x)$") #画图 美元符号是变斜体的意思
plt.legend(loc = 0) #显示图例
plt.savefig(‘test.png’, dpi = 100, bbox_inches = ‘tight’) #保存
plt.show() #显示
绘制子图
调用fig对象add_subplot方法和plt.subplot()绘制有多个轴的图表
方法一:p1.add_subplot(3,2,3)三行两列共六个子图,当前是第3个子图
plt.subplot_adjust(wspace = 0, hspace = 0.7) #调整子图的间距
方法二:plt.subplot(3,2,3)
调价备注:
plt.text(0,0,'(0,0)',color='r',fontsize=20,rotation=0,bbox=dict(facecolor='b', edgecolor='r', alpha=0.65 )) #添加文字说明
plt.annotate('max', color='r',xy=(1.57, 1), xytext=(2, 1.5),arrowprops=dict(facecolor='r', edgecolor='r',width=2,shrink=0.015,headlength=10)) #添加注释
循环作图:
图中图:
散点图
plt.scatter(x , y , color = ‘r’, marker = ‘D’ , s= 10)
plt.show()
饼图
labels = [‘USA’ , ‘C