本文主要内容来自于天池课堂,本文在进行整理的同时在此注明原作者和原文链接,有兴趣的朋友可移步观看。
折线图与面积图
折线图
plt.plot(kind='line', ax=None, figsize=None, use_index=True, title=None, grid=None, legend=False, style=None, logx=False, logy=False, loglog=False, xticks=None, yticks=None, xlim=None, ylim=None, rot=None, fontsize=None, colormap=None, table=False, yerr=None, xerr=None, label=None, secondary_y=False, **kwds)
- series的index为横坐标
- value为纵坐标
- kind → line,bar,barh...(折线图,柱状图,柱状图-横...)
- label → 图例标签,Dataframe格式以列名为label
- style → 风格字符串,这里包括了linestyle(-),marker(.),color(g)
- color → 颜色,有color指定时候,以color颜色为准
- alpha → 透明度,0-1
- use_index → 将索引用为刻度标签,默认为True
- rot → 旋转刻度标签,0-360
- grid → 显示网格,一般直接用plt.grid
- xlim,ylim → x,y轴界限
- xticks,yticks → x,y轴刻度值
- figsize → 图像大小
- title → 图名
- legend → 是否显示图例,一般直接用plt.legend()
ts = pd.Series(np.random.randn(1000), index=pd.date_range('1/1/2000', periods=1000)) # pandas 时间序列ts = ts.cumsum()ts.plot(kind='line', label = "what", style = '--.', color = 'g', alpha = 0.4, use_index = True, rot = 45, grid = True, ylim = [-50,50], yticks = list(range(-50,50,10)), figsize = (8,4), title = 'TEST_TEST', legend = True)# 对网格项进行更加细致的设置#plt.grid(True, linestyle = "--",color = "gray", linewidth = "0.5",axis = 'x') # 网格plt.legend()
# subplots → 是否将各个列绘制到不同图表,默认Falsedf = pd.DataFrame(np.random.randn(1000, 4), index=ts.index, columns=list('ABCD')).cumsum()df.plot(kind='line', style = '--.', alpha = 0.4, use_index = True, rot = 45, grid = True, figsize = (8,4), title = 'test', legend = True, subplots = False, colormap = 'Greens')
面积图
面积图与线图非常相似。它们也被称为堆栈图。这些图可用于跟踪构成一个整体类别的两个或多个相关组的随时间变化。
- stacked:是否堆叠,默认情况下,区域图被堆叠
- 为了产生堆积面积图,每列必须是正值或全部负值!
- 当数据有NaN时候,自动填充0,图标签需要清洗掉缺失值
fig,axes = plt.subplots(2,1,figsize = (8,6))df1 = pd.DataFrame(np.random.rand(10, 4), columns=['a', 'b', 'c', 'd'])df2 = pd.DataFrame(np.random.randn(10, 4), columns=['a', 'b', 'c', 'd'])df1.plot.area(colormap = 'Greens_r',alpha = 0.5,ax = axes[0])df2.plot.area(stacked=False,colormap = 'Set2',alpha = 0.5,ax = axes[1])for i in range(2): axes[i].legend(l