5-个步骤打造冷艳的折线图-Python-轻松玩转 (要如何打)
1、简介
图片
最富裕的5个国度的GDP随期间的演化
Matplotlib可以极速轻松地经常使用现成的函数绘制图表,但是微调步骤须要破费更多精神。当天就来引见如何经常使用Matplotlib绘制吸引人的图表。
本文具体引见如何从上方这张图↓
图片
优化为上方这张图↓
图片
2、数据
为了说明方法,本文经常使用了蕴含过去50年各国GDP消息的地下数据集:
起源:环球银行国民账户数据和OECD(经济协作与开展组织)国民账户数据文件。
容许证URL:
导入必要的软件包、读取数据、绘制图表,对2022年的GDP前20个国度启动挑选:
importpandasaspdimportmatplotlib.pyplotaspltfromdatetimeimporttimedelta#读取数据df=pd.read_csv('88a1e584-0a94-4e73-b650-749332831ef4_Data.csv',)df.drop(['SeriesName','SeriesCode','CountryCode'],axis=1,inplace=True)df=df.dropna(subset=['CountryName'])#对2022年最富裕的20个国度启动挑选top_20_countries=df[df['Year']=='2022-01-01'].sort_values('GDP',ascending=False).head(20)['CountryName'].tolist()df=df[df['CountryName'].isin(top_20_countries)].reset_index(drop=True)df.head()
3、基本图
首先,只有四行代码就足以创立图形,并循环遍历各国以绘制它们各自的折线:
#创立图形和坐标轴对象,指定尺寸和DPIfig,ax=plt.subplots(figsize=(13.33,7.5),dpi=96)#绘制折线forcountryintop_20_countries:alt="轻松玩转Python,五个步骤打造冷艳的折线图"/>最基本的Matplotlib折线图4、基本要素
接上去向图表中减少一些关键内容,使其更易于观众阅读。
为了提高图表的可读性,网格是必无法少的。将网格的透明度设置为0.5,这样它们就不会对数据点形成太大搅扰。
为了更片面地了解微调的或者性,本文故意减少了更多的参数。例如,X轴不须要major_formatter和major_locator对象,由于本文只显示年份,但假设读者的X轴蕴含其他数字,这就会派上用场。
由于要显示很多条线,因此减少标签和图例十分关键,这样读者就能知道哪条线是哪条线。
#减少图例ax.legend(loc="best",fnotallow=8)#创立网格ax.grid(which="major",,,alpha=0.5,zorder=1)ax.grid(which="major",,,alpha=0.5,zorder=1)#从新格局化x轴标签和刻度线标签ax.set_xlabel('',fnotallow=12,labelpad=10)#不须要轴标签ax.xaxis.set_label_position("bottom")#ax.xaxis.set_major_formatter(lambdas,i:f'{s:,.0f}')#以防万一咱们须要额外的格局设置#ax.xaxis.set_major_locator(MaxNLocator(integer=True))#以防咱们须要额外的格局化ax.xaxis.set_tick_params(pad=2,labelbottom=True,bottom=True,labelsize=12,labelrotatinotallow=0)#从新格局化y轴ax.set_ylabel('GDP(BillionsUSD)',fnotallow=12,labelpad=10)ax.yaxis.set_label_position("left")ax.yaxis.set_major_formatter(lambdas,i:f'{s*10**-9:,.0f}')#ax.yaxis.set_major_locator(MaxNLocator(integer=True))#以防咱们须要额外的格局化ax.yaxis.set_tick_params(pad=2,labeltop=False,labelbottom=True,bottom=False,labelsize=12)
图片
为本文的图表减少一些必要的性能
5、突出重点
接上去,突出显示最富裕的五个国度,并跟踪其GDP随期间的变动。在字典中定义了特定的色彩和线条样式,并对代码稍作修正,以独自绘制它们。
#色彩和线条样式colors_dict={'UnitedStates':'#014f86','China':'#DC0000','Japan':'#ff4d6d','Germany':'#403d39','India':'#6a994e'}line_styles_dict={'UnitedStates':'-','China':'-','Japan':'-','Germany':'-','India':'-'}#绘制前5条线forcountryintop_20_countries[:5]:color=colors_dict.get(country,'grey')#从字典中失掉色彩,假设找不到,默以为灰色line_style=line_styles_dict.get(country,'-')#从字典中失掉线条样式,假设未找到,默以为实线alt="轻松玩转Python,五个步骤打造冷艳的折线图"/>图片依然是相反的折线图,但故事更明晰了
6、修正外观
为本文的图表减少一些性能,可以使其看起来愈加专业。它们将位于一切图表的顶部,并且与本文中经常使用的数据有关。
经过上方的代码片段,这些调整将很容易成功。
读者可以依据自己的需求对其启动调整,以创立自己的视觉格调。
边框是图表周围可见的框。除了左边的边框会设置得稍微粗一些外,其他的边框都将被移除。
在题目上方减少一条红线和一个矩形,以便将图表与上方的文本很好地隔退进去。
减少题目来引见图表,副题目可以用来进一步解释内容,甚至出现初步的论断。
在一切制造的图表中都必无法少的一项。
调整图表区域周围的边距,以确保充沛应用一切可用空间。
将背景设置为红色(默以为透明)在经过电子邮件、Teams或任何其他工具发送图表时十分有用,由于透明背景或者会形成疑问。
本文的视觉格调运行于图表,使其愈加整洁
7、点睛之笔
为了失掉在文章扫尾引见的最终结果,剩下要做的就是成功这几个额外的组件:
这些元素纯正是为了好看,但能为本文的折线图削减一份亮点。用标志突出显示每条折线的最后一个点,使其愈加醒目。
借助annotate方法,可以突出显示图表中的特定点,并在其上间接减少注释。
#绘制前5条线forcountryintop_20_countries[:5]:color=colors_dict.get(country,'grey')#从字典中失掉色彩,假设找不到,默以为彩色line_style=line_styles_dict.get(country,'-')#从字典中失掉线条样式,假设找不到,默以为实线alt="轻松玩转Python,五个步骤打造冷艳的折线图"/>图片最终成绩:这个折线图明晰易读
8、结语
本文分享了经常使用Matplotlib绘制折线图的常识,同时提供了适用可重复经常使用的代码片段。
绘制曲线图需要以下步骤:1. 确定数据类型:首先需要确定要绘制的曲线图的数据类型。 不同的数据类型可能需要选择不同的绘图方法。 例如,时间轴上的数据需要使用折线图,而品牌销售数据需要使用条形图。 2. 准备数据:此步骤需要将数据整理成表格形式,并确认数据的准确性。 表格中应包括时间或其他连续变量和相应的数值,同时还需要添加标签和注释以方便观察者理解。 3. 选择正确的软件:选择适合自己的绘图软件。 不同的软件有不同的功能,例如某些软件可以添加注释、标签和标题,而其他软件则没有这些功能。 可以选择Excel、Python Matplotlib、R Studio等进行绘制。 4. 选中数据和图表类型:选中要制作曲线图的数据,然后在软件中选择图表类型中的“曲线图”,选择好以后,软件会自动生成曲线图。 5. 设置曲线图的样式和布局:制作好曲线图之后,可以对曲线图进行样式和布局的设置。 打开曲线图,在软件的“设计”选项中有丰富的设置选项,可调节每个元素的大小、颜色、字体等等。 可以进行调整,使得曲线图更加美观和直观。 以上就是绘制曲线图的基本步骤,需要注意的是,要根据数据类型选择合适的绘图方法,并且要确保数据的准确性和规范的输入。 同时,通过调整样式和布局,可以使曲线图更加美观和直观。
免责声明:本文转载或采集自网络,版权归原作者所有。本网站刊发此文旨在传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及版权、内容等问题,请联系本网,我们将在第一时间删除。同时,本网站不对所刊发内容的准确性、真实性、完整性、及时性、原创性等进行保证,请读者仅作参考,并请自行核实相关内容。对于因使用或依赖本文内容所产生的任何直接或间接损失,本网站不承担任何责任。