如何用excel找坡度?斜率图可以快速显示两组数据之间各个维度的变化,特别适合比较两个时间点的数据。
例如,为了比较和分析一个产品不同功能的客户满意度,经过问卷调查和数据统计,得出以下调查结果:
你不妨先自己想想,如何将这组数据可视化,才能让信息传递更高效?
以下是我用matplotlib制作的图表:
从图中可以直观地看出,功能C的用户满意度明显下降,用亮橙色表示,以吸引观众的注意力。
功能D和功能E的用户满意度明显提升。我们用蓝色表示数据正朝着好的方向发展。
功能A和功能B的用户满意度变化不大,所以我们用浅灰色来弱化观众对这两个功能的关注,把更多的精力放在分析用户满意度明显下降的功能点上,让图表提高信息传递的效率。
01.下面是用matplotlib绘制的详细步骤。
首先导入需要的库,设置中文字体,定义颜色。
#导入所需库导入numpy为NP导入pandas为PD导入matplotlib为mpl导入matplotlib.py绘图为PLT导入matplotlib.image为image。
#中文标签mpl . rcparams[' font . sans-serif ']=[' sim hei ']显示正常。
#自动适配布局mpl . rcparams . update({ ' figure . autolayout ' : true })。
#通常显示减号mpl . rcparams[' axes . unicode _ negative ']=false。
#定义颜色,主色:蓝色,辅助色:灰色,补色:橙色c={ ' '蓝色' :' # 00589f ','深蓝色' :' # 003867 ','浅蓝色' :' # 5d9bcf ','灰色' 33337 '。浅灰色' : ' # cccccccc ','橙色' :' # f68f00 ','深橙色' :' # a05d00 ','浅橙色' :'#FBC171'}。
其次,从Excel文件中读取随机模拟的数据,定义绘图的数据。
#数据源路径filepath='。/data/问卷调查结果. xlsx '
#读取Excel文件df=pd。read _ excel (filepath,index _ col='调查年份')。
#定义绘图类别名称的数据=df . columns labels=df . index data=df . values data _ cum=data . cum sum(轴=1)。
接下来,我们开始使用“面向对象”的方法进行绘图。
#使用“面向对象”的方法绘制图片,并定义图片的大小(图,ax=PLT。支线剧情(图大小=(6,6))。
#设置背景色fig . set _ face color(' w ')ax . set _ face color(' w ')。
#设置标题ax。set _ title(' n用户满意度随时间变化 n ',fontsize=26,loc=' left ',color=c ['深灰'])。
#定义颜色类别_ colors=[c ['浅灰色'],c ['浅灰色'],c ['橙色'],c ['蓝色'],c ['蓝色']]]。
#为I绘制坡度图,颜色以zip (NP)表示。阿兰格(伦(df。列),category _ colors) :ax。绘图(df。指数。iloc [:I],标记=' o ',颜色=颜色)。
#设置数据标签及其文本颜色ax.text (-0.03,df.iloc [0,I],df.columns [I]''' {:0%} '。格式(df.iloc [0,I]),ha='右',va='中。fontsize=16) ax.text(1.06,df.iloc[1,i],' {:0%} '。格式(df.iloc[1,i]),ha='左',va='中',color=color,fontsize=16)
#设置y轴ax的刻度范围。set _ ylim (df。values.min ()-0.02,df。values.max () 0.01)。
#隐藏y轴ax.yaxis.set_visible(False)。
#隐藏边框ax.spins ['top']。set _ visible(false)ax . spins[' right ']。set _ visible(false)ax . spins[' left ']。set _ visible(false)ax . spins[' bottom ']。
#隐藏x轴的刻度线ax.tick _ params(轴=' x ',其中=' major ',长度=0)。
#设置坐标标签ax.tick _ params的字体大小和颜色(labelsize=16,colors=c ['gray'])。
plt.show()
跑步后,你会看到上图。
02.对于同一组数据,不同的人可能有不同的观察视角。当可视化它们时,通常有许多不同的解决方案。这里介绍的方法并不是唯一正确的答案。重点是,设计师想传达什么信息?你是否让观众正确快速地理解了他们想要表达的信息?
不同类型的图表有不同的优缺点。
斜率图的优点是可以快速看到每一类前后的变化,并能根据线条的陡度直观感受变化。
斜率图的缺点是看不到整体和部分的比例。此外,如果类别的顺序很重要,则不适合使用斜率图,因为类别是根据数值自动排列的。
最后给大家留一个问题:在大家看到的各种数据中,哪些数据适合用斜率图进行对比分析?