一、默认情况下绘图

本例使用我国1953-2021年的“人均GDP同比增长率(%)”来进行演示,数据来源于wind,数据概况如下:

GDP = [13.1, 1.8, 4.6, 12.7, 2.4, 18.4, 6.9, -0.2, -26.5, -6.3, 7.6, 15.5, 14.2, 7.6, -8.1, -6.5, 13.8, 16.1, 4.2, 1.3, 5.3, 0.2, 6.8, -3.1, 6.1, 10.2, 6.2, 6.5, 3.8, 7.4, 9.2, 13.7, 11.9, 7.3, 9.9, 9.4, 2.6, 2.4, 7.8, 12.8, 12.6, 11.8, 9.8, 8.8, 8.1, 6.8, 6.7, 7.6, 7.6, 8.4, 9.4, 9.5, 10.7, 12.1, 13.6, 9.1, 8.9, 10.1, 9.0, 7.1, 7.1, 6.8, 6.4, 6.2, 6.3, 6.3, 5.6, 2.1, 8.0]Year = [1953, 1954, 1955, 1956, 1957, 1958, 1959, 1960, 1961, 1962, 1963, 1964, 1965, 1966, 1967, 1968, 1969, 1970, 1971, 1972, 1973, 1974, 1975, 1976, 1977, 1978, 1979, 1980, 1981, 1982, 1983, 1984, 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021]

简单参数情况下,绘图代码如下:

plt.figure(figsize=(6,4),dpi=100)
plt.plot(Year, GDP,color='darkblue',linewidth='0.8',label='中国人均GDP年实际增速')plt.xlabel('年份')
plt.ylabel('人均GDP同比增长(%)')
plt.legend(loc='lower right')
plt.grid(alpha=0.4,linestyle=':')
plt.show()

代码执行效果如下图:

二、对图表进行调整

调整要求:

1、调整坐标上方和右方坐标轴;

2、将X轴调整至y=0处;

3、将y轴标签“人均GDP同比增长(%)”调整至y轴上方,并调整方向为水平;

4、将x轴调整后,刻度标签跟随移动,我们将x轴刻度标签保留在图表最下方。

(一)调整坐标轴

去掉坐标的上方和右方坐标轴,再将X轴移动到y=0处。

plt.figure(figsize=(6,4),dpi=100)
plt.plot(Year, GDP,color='darkblue',linewidth='0.8',label='中国人均GDP年实际增速')ax = plt.subplot()
ax.spines['top'].set_visible(False) #设置坐标轴,下同
ax.spines['right'].set_visible(False)
ax.spines['bottom'].set_position(('data',0))plt.xlabel('年份')
plt.ylabel('人均GDP同比增长(%)')
plt.legend(loc='lower right')
plt.grid(alpha=0.4,linestyle=':')
plt.show()

调整坐标轴和调整X轴的效果如下:

(二)调整X轴、Y轴标签位置、方向和X轴刻度标签位置

下面请看代码,代码中的参数的相关数据可以根据实际需要进行调整:

plt.figure(figsize=(6,4),dpi=100)
plt.plot(Year, GDP,color='darkblue',linewidth='0.8',label='中国人均GDP年实际增速')ax = plt.subplot()
ax.spines['top'].set_visible(False)  #设置坐标轴,下同
ax.spines['right'].set_visible(False)
ax.spines['bottom'].set_position(('data',0))plt.xlabel('年份',labelpad=-12,  #调整x轴标签与x轴距离x=1.04,  #调整x轴标签的左右位置fontsize=9)
plt.ylabel('人均GDP同比增长(%)',labelpad=-40,  #调整y轴标签与y轴的距离y=1.02,  #调整y轴标签的上下位置rotation=0,fontsize=9) plt.xticks(np.arange(1953,2024,5),rotation=45,position=(0,-29), #调整年份的位置,让远离了x轴fontsize=9)
plt.yticks(np.arange(-30,21,5),fontsize=9)plt.legend(fontsize=9,bbox_to_anchor=(0.7,-0.1), #图例的框位置,调整到坐标轴外frameon=False)  #图例的边框开关plt.grid(alpha=0.4,linestyle=':')
plt.show()

调整坐标轴标签,以及x轴刻度标签位置的效果如下:

本例只是为了演示调整坐标轴、X轴位置,调整坐标轴标签和方向、调整x轴刻度标签,其余的图形效果可以自行调整设计。

<原创,引用请标明出处>

Python-matplotlib:调整坐标轴位置、标签位置和标签方向,以及X轴刻度标签位置相关推荐

  1. python使用matplotlib可视化、自定义移除Y轴指定轴刻度标签(removing specific axis ticks in matplotlib y axis)

    python使用matplotlib可视化.自定义移除Y轴指定轴刻度标签(removing specific axis ticks in matplotlib y axis) 目录 python使用m ...

  2. python使用matplotlib可视化、自定义设置Y轴刻度标签字体的大小( setting axis ticks size in matplotlib y axis)

    python使用matplotlib可视化.自定义设置Y轴刻度标签字体的大小( setting axis ticks size in matplotlib y axis) 目录

  3. python使用matplotlib可视化、自定义移除X轴指定轴刻度标签(removing specific axis ticks in matplotlib x axis)

    python使用matplotlib可视化.自定义移除X轴指定轴刻度标签(removing specific axis ticks in matplotlib x axis) 目录 python使用m ...

  4. python使用matplotlib可视化、自定义设置X轴刻度标签字体的大小( setting axis ticks size in matplotlib x axis)

    python使用matplotlib可视化.自定义设置X轴刻度标签字体的大小( setting axis ticks size in matplotlib x axis) 目录

  5. python matplotlib 定制坐标轴

    例子:根据下表的数据,将时间列的数据作为x轴的刻度标签,将风速列的数据作为y轴的数据,使用plot()方法绘制反映深圳市24小时平均风速的折线图 长度为6,宽度为2,标签大小为12刻度线方向朝内,长度 ...

  6. python画图 调整坐标轴标签位置 ylabel/xlabel位置 python pyplot 坐标轴交叉点 文本竖着排列 plt.xlabel 竖着 pyplot折线图横坐标竖着显示

    文章目录 调整坐标轴标签位置 ylabel/xlabel位置 坐标轴交叉点 plt.xlabel 竖着 调整坐标轴标签位置 ylabel/xlabel位置 更新:评论区的伙伴给了更好的解决方案 参考链 ...

  7. matplotlib调整坐标轴最小刻度单位,坐标轴主副刻度单位

    设置最小的刻度,比如刻度为3,而不去设置坐标轴的范围,也是有时候的一些需求. fig, ax = plt.subplots(1, 1) ax.plot(range(12), range(12)) ax ...

  8. Python+matplotlib自定义坐标轴位置、颜色、箭头

    容易的事.例如下面的代码: 绘制结果为: 虽然确实几行代码就画出了正弦曲线,但是这个图也太朴素了,如果我们想得到下面这样的结果,该如何实现呢? 上面图形中的难点在于坐标轴的箭头,可以使用axisart ...

  9. Python Matplotlib中坐标轴标题中各种特殊符号的显示 转义字符全集,编写数学表达式

    Matplotlib中文显示问题--用例子说明问题 #-*- coding: utf-8 -*- from pylab import * t = arange(-4*pi, 4*pi, 0.01) y ...

最新文章

  1. 如何将 AI 应用于高考?辽宁使用 AI 技术进行高考违规行为异常检测!
  2. 结果方程模型(SEM)的理论和基本实现过程
  3. 团队项目技术规格说明书---客户端
  4. 在emu8086中学习汇编语言加减法程序
  5. linux分辨率高字体小 redhat,为Redhat Enterprise Linux的两个字体子系统添加字体
  6. 听歌是怀念过去 - 潇洒的走
  7. JS的三种消息提示框alert confirm prompt
  8. hello程序的运行过程-从计算机系统角度
  9. 25 CO配置-控制-产品成本控制-成本对象控制-期末结算-定义利润分析码
  10. linux bash 删除所有空格,删除字符串中的所有的空白并用空格分割单词.md
  11. jQuery 语法总结和注意事项
  12. Easy Touch 5 简单使用
  13. 《平凡的世界》(书评)
  14. 宽带未能和路由器连接服务器,连接路由器却上不了网怎么办
  15. 电车难题和他的n个**变种分享
  16. markdown左对齐
  17. 图解网络TCP/IP
  18. android声音编辑器,音频视频编辑器app下载-Audio Video Editorv1.1.0 安卓版-腾牛安卓网...
  19. 【开发环境】Windows环境下Python开发环境 Pycharm Anaconda安装配置(无错完整)
  20. neo4j图形数据库Java应用

热门文章

  1. 教师节,给老师们写一个随机点名的网页
  2. quark h5 学习
  3. 【码支付系统】无授权—个人免签约支付系统二维码收款即时到账源码
  4. xposed模块编写教程_太极xposed模块使用教程
  5. 64位计算机最大寻址,为什么说32位操作系统的寻址空间是4G
  6. java 接收 char字符型
  7. 基于CAD等高线的流域边界绘制
  8. 问题记录:系统还原后,QQ显示一直登录中,但却登录不上去,而且很多软件无法使用
  9. word表格分开快捷键_在Word2010表格的编辑中,快速的拆分表格应按()快捷键。
  10. C#范例开发大全.刘丽霞李俊民(奋斗的小鸟)_PDF 电子书