折线图与面积图系列
时间序列型图表
折线图与面积图系列
折线图
面积图
日历图
量化波形图
折线图
折线图(line chart)用于在连续间隔或时间跨度上显示定量数值;
常用来显示趋势和关系;
主要应用于时间系列数据可视化;
能够体现某些时间段内的整体概览,看看数据在这段时间内的发展情况;
绘制折线图
先在笛卡尔坐标系上定出数据点;
用直线把这些点连接起来;
折线图
X轴包括类别型或序数型变量;
分别对应文本坐标轴和序数坐标轴两种类型;
Y轴为数值型变量;
面积图
面积图(area graph)又称区域图
是在折线图基础之上形成;
将折线图中折线与自变量坐标轴之间的区域使用颜色或纹理填充
填充区域称为“面积”;
常用来显示趋势和关系;
可以更好突出趋势信息,同时让图表更加美观;
能够体现某些时间段内的整体概览,看看数据在这段时间内的发展情况;
绘制面积图需要注意
颜色要带有一定的透明度;
透明度可以很好观察不同数据序列之间的重叠关系;
避免数据之间遮挡;
数据系列最好不要超过3个;
颜色映射填充面积图
将折线部分的数据点根据Y值颜色映射到颜色渐变主题;
可以更好促进数据信息表达;
只适用于单数据系列面积图;
两条折线间填充面积图
两条折线之间可以使用面积填充,可以清晰观察数据之间的差异变化;
只适用于双数据系列的数值差异比较展示;
折线图和面积图系列的绘制方法
使用plotnine包绘制多数据系列折线图和面积图
plotnine包的geom_line()函数可以绘制折线图;
geom_area()函数可以绘制面积图;
geom_ribbon()函数可以绘制夹层填充面积图
多数据系列图---折线图
import pandas as pd
import numpy as np
from plotnine import *
#from plotnine.data import *
import matplotlib.pyplot as plt
from datetime import datetime
df=pd.read_csv('d:/python/out/LineD.csv')
df['date']=[datetime.strptime(d, '%Y/%m/%d').date() for d in df['date']]#df['date'].map(lambda x:datetime.datetime.strptime(x, '%Y/%m/%d').date())
melt_df=pd.melt(df,id_vars=["date"],var_name='variable',value_name='value')
#多数据系列图. (a)折线图
base_plot=(ggplot(melt_df, aes(x ='date', y = 'value',
group='variable',color='variable') )+
#geom_area(fill="#FF6B5E",alpha=0.75)+
geom_line(size=1)+
scale_x_date(date_labels = "%Y",date_breaks = "2 year")+
scale_fill_hue(s = 0.90, l = 0.65, h=0.0417,color_space='husl')+
xlab("Year")+
ylab("Value")+
theme( axis_title=element_text(size=10,face="plain",color="black"),
axis_text = element_text(size=10,face="plain",color="black"),
legend_position = (0.25,0.8),
legend_background = element_blank(),
aspect_ratio =0.85,
figure_size = (5, 5),
dpi = 100