7.设置刻度
7.1.设置坐标轴刻度
7.2.设置刻度标签(Setting Tick Labels)
7.3.调整刻度标签 (Adjusting the ticklabels)

7.设置刻度

7.1.设置坐标轴刻度

到目前为止,在所有例子中Matplotlib都自动负责了确定轴上间距点的任务。

例如,可以看到前面一个例子中的X轴编号为 -6. -4, -2, 0, 2, 4, 6, 而Y轴编号 -1.0,0, 1.0, 2.0, 3.0

使用xticks或yticks可获取或设置当前的刻度位置和标签。

import numpy as np
import matplotlib.pyplot as plt
# get the current axes, creating them if necessary:
ax = plt.gca()
locs, labels = plt.xticks()
print(locs, labels)
locs, labels = plt.xticks()
print(locs, labels)
locs, labels = plt.yticks()
print(locs, labels)

输出结果:

[0.  0.2 0.4 0.6 0.8 1. ] [Text(0, 0, ''), Text(0, 0, ''), Text(0, 0, ''), Text(0, 0, ''), Text(0, 0, ''), Text(0, 0, '')]
[0.  0.2 0.4 0.6 0.8 1. ] [Text(0, 0, ''), Text(0, 0, ''), Text(0, 0, ''), Text(0, 0, ''), Text(0, 0, ''), Text(0, 0, '')]

plt.xticks(np.arange(10))
locs, labels = plt.xticks()
print(locs, labels)
'''
输出结果:
[0 1 2 3 4 5 6 7 8 9] [Text(0, 0, ''), Text(0, 0, ''), Text(0, 0, ''), Text(0, 0, ''), Text(0, 0, ''), Text(0, 0, ''), Text(0, 0, ''), Text(0, 0, ''), Text(0, 0, ''), Text(0, 0, '')]
'''

现在,设置xticks的位置和标签:

# set the locations and labels of the xticks
plt.xticks(np.arange(4),('Berlin', 'London', 'Paris', 'Toronto'))
plt.show()

输出:

([<matplotlib.axis.XTick at 0x17822581a48>,<matplotlib.axis.XTick at 0x1782257dec8>,<matplotlib.axis.XTick at 0x1782257da88>,<matplotlib.axis.XTick at 0x178225a8248>],<a list of 4 Text xticklabel objects>)

回到之前的三角函数示例。下面使用Pi的因子而非整数值作为X轴的刻度:

import numpy as np
import matplotlib.pyplot as plt
X = np.linspace(-2 * np.pi, 2 * np.pi, 70, endpoint=True)
F1 = np.sin(X**2)
F2 = X * np.sin(X)
# get the current axes, creating them if necessary:
ax = plt.gca()
# making the top and right spine invisible:
ax.spines['top'].set_color('none')
ax.spines['right'].set_color('none')
# moving bottom spine up to y=0 position:
ax.xaxis.set_ticks_position('bottom')
ax.spines['bottom'].set_position(('data',0))
# moving left spine to the right to position x == 0:
ax.yaxis.set_ticks_position('left')
ax.spines['left'].set_position(('data',0))
plt.xticks( [-6.28, -3.14, 3.14, 6.28])
plt.yticks([-3, -1, 0, +1, 3])
plt.plot(X, F1)
plt.plot(X, F2)
plt.show()

7.2.设置刻度标签(Setting Tick Labels)

现在用自定义标记重新定义xticks。 我们将再次使用xticks方法来实现此目的。

但是这次将用两个参数调用xticks:

第一个是之前使用的相同列表,即x轴上的位置,来得到刻度。

第二个参数是具有与之相应LaTex刻度标记的相同大小的列表,即想要用文本而不是值。LaTex表示法必须是一个原始字符串(raw string)来抑制Python的转义机制,因为LaTex表示法大量使用并依赖于反斜杠。

import numpy as np
import matplotlib.pyplot as plt
X = np.linspace(-2 * np.pi, 2 * np.pi, 70, endpoint=True)
F1 = X * np.sin(X)
ax = plt.gca()
ax.spines['top'].set_color('none')
ax.spines['right'].set_color('none')
ax.xaxis.set_ticks_position('bottom')
ax.spines['bottom'].set_position(('data',0))
ax.yaxis.set_ticks_position('left')
ax.spines['left'].set_position(('data',0))
# labelling the X ticks:
plt.xticks( [-6.28, -3.14, 3.14, 6.28],[r'$-2\pi$', r'$-\pi$', r'$+\pi$', r'$+2\pi$'])
plt.yticks([-3, -1, 0, +1, 3])
plt.plot(X, F1)
plt.show()

7.3.调整刻度标签 (Adjusting the ticklabels)

我们希望增加ticklabels的易读性。 我们将增加字体大小,并将在半透明背景上渲染它们。

print(ax.get_xticklabels())
'''
输入结果:
[Text(-6.28, 0, '$-2\\pi$'), Text(-3.14, 0, '$-\\pi$'), Text(3.14, 0, '$+\\pi$'), Text(6.28, 0, '$+2\\pi$')]
'''for xtick in ax.get_xticklabels():print(xtick)
'''
输出结果:
Text(-6.28, 0, '$-2\\pi$')
Text(-3.14, 0, '$-\\pi$')
Text(3.14, 0, '$+\\pi$')
Text(6.28, 0, '$+2\\pi$')
'''labels = [xtick.get_text() for xtick in ax.get_xticklabels()]
print(labels)
'''
输出结果:
['$-2\\pi$', '$-\\pi$', '$+\\pi$', '$+2\\pi$']
'''

让我们增加字体大小并使字体半透明:

import numpy as np
import matplotlib.pyplot as pltX = np.linspace(-2 * np.pi, 2 * np.pi, 170, endpoint=True)
F1 = np.sin(X ** 3 / 2)
ax = plt.gca()
ax.spines['top'].set_color('none')
ax.spines['right'].set_color('none')
ax.xaxis.set_ticks_position('bottom')
ax.spines['bottom'].set_position(('data', 0))
ax.yaxis.set_ticks_position('left')
ax.spines['left'].set_position(('data', 0))
plt.xticks([-6.28, -3.14, 3.14, 6.28],[r'$-2\pi$', r'$-\pi$', r'$+\pi$', r'$+2\pi$'])
plt.yticks([-3, -1, 0, +1, 3])
for xtick in ax.get_xticklabels():# 设置x轴上字体大小xtick.set_fontsize(18)# 设置x轴标签的颜色xtick.set_bbox(dict(facecolor='red', edgecolor='None', alpha=0.7))
for ytick in ax.get_yticklabels():# 设置y轴上字体大小ytick.set_fontsize(14)# 设置y轴上标签的颜色ytick.set_bbox(dict(facecolor='green', edgecolor='red', alpha=0.7))plt.plot(X, F1, label="$sin(x)$")
plt.legend(loc='lower left')
plt.show()

07_设置坐标轴刻度、设置刻度标签(Setting Tick Labels)、调整刻度标签 (Adjusting the ticklabels)相关推荐

  1. ggplot2设置坐标轴范围_ggplot2画图时出现重合的点以及标签如何处理?有现成的包ggrepel

    公众号:生物信息学习 ggplot2画图时出现重合的点以及标签如何处理?有现成的包ggrepel​mp.weixin.qq.com 在R中散点图的时候会经常出现,点重合,点的标签重合比较严重的现象,这 ...

  2. python使用matplotlib可视化:设置坐标轴的范围、设置主次坐标轴刻度、坐标轴刻度显示样式、坐标轴刻度数颜色、小数点位数、坐标轴刻度网格线、线条类型、数据点形状标签、文本字体、颜色、大小等

    python使用matplotlib可视化:设置坐标轴的范围.设置主次坐标轴刻度.坐标轴刻度显示样式.坐标轴刻度数颜色.小数点位数.坐标轴刻度网格线.线条类型.数据点形状标签.文本字体.颜色.大小等 ...

  3. matplotlib之pyplot模块——获取或设置坐标轴刻度及标签(xticks、yticks)

    概述 xticks和yticks函数的作用都是获取或设置坐标轴的刻度及标签.其中 xticks函数作用是获取或设置x坐标轴的刻度及标签. yticks函数作用是获取或设置y坐标轴的刻度及标签. 两者参 ...

  4. Matplotlib:设置坐标轴范围,刻度,位置,自定义刻度名称,添加数据标签

    在使用matplotlib模块时画坐标图时,往往需要对坐标轴设置很多参数,这些参数包括横纵坐标轴范围.坐标轴刻度大小.坐标轴名称等 xlim():设置x坐标轴范围 ylim():设置y坐标轴范围 xl ...

  5. matplotlib绘制图表,设置刻度标签、最大最小刻度、字体大小,label位置、刻度轴箭头等

    matplotlib绘制图表,设置刻度标签.最大最小刻度.字体大小,label位置.刻度轴箭头等 1. 效果图 2. 源码 2.1 仅使用普通轴ax + fontdict 源码 2.2 使用mpl设置 ...

  6. python坐标轴刻度设置_学习python中matplotlib绘图设置坐标轴刻度、文本

    总结matplotlib绘图如何设置坐标轴刻度大小和刻度. 上代码: from pylab import * from matplotlib.ticker import MultipleLocator ...

  7. python坐标轴刻度设置_matplotlib命令与格式之tick坐标轴日期格式(设置日期主副刻度)...

    1.横坐标设置时间格式 import matplotlib.pyplot as plt import matplotlib.dates as mdates # 配置横坐标为日期格式 plt.gca() ...

  8. feather 设置坐标刻度_matplotlib学习记录:调整刻度范围和刻度标签

    图示: 知识点: 1.调整x轴和y轴的显示范围 plt.xlimit(min,max)和plt.ylimit(min,max) 2.设置x轴和y轴的刻度与标签文本 plt.xticks([刻度],[标 ...

  9. Python使用matplotlib.pyplot绘图时设置坐标轴刻度

    问题描述:在使用matplotlib绘图时,可能会需要设置坐标轴上刻度之间的距离,或者为刻度设置标签. 技术要点:pyplot的xticks()和yticks()函数的用法. 参考代码1: 运行结果1 ...

最新文章

  1. 采购AI/ML安全工具前要先回答这11个问题
  2. 我的2019春招(前端暑期实习)记录
  3. 常考数据结构与算法:最大正方形
  4. jvm性能调优实战 -50修复Metaspace区域内存溢出问题
  5. P3211-[HNOI2011]XOR和路径【高斯消元】
  6. 动荡下如何自救 | 社招一年收割BATDK算法offer
  7. algorithm头文件下函数整合
  8. 安卓9开机 bootanimation.zip_小米手机如何从安卓10退回安卓9系统,不丢失传感器,不变砖...
  9. excel实时获取基金信息的实现方法
  10. 公文中的六角括号怎么打?
  11. QT MD4 MD5 Sha1等几种加密方式
  12. 易语言 使用精易皮肤模块的 方法
  13. [Java学习] BFS算法示例
  14. typedef与define 傻傻的分不清楚
  15. php中exec的用法,php exec用法详解
  16. OpenGL法线贴图
  17. 安装sklearn-poter遇到报错(TypeError:‘encoding‘ is an invalid keyword argument for this function)
  18. 如何 拆 贴片电容 而不是把焊盘给搞坏
  19. breakpoint
  20. 向量点积衡量相似度_余弦距离、欧氏距离和杰卡德相似性度量的对比分析

热门文章

  1. 如何用Seaborn描绘线图,分面网格关联图,密度图,连接图,热力图,线性回归图,分面网格绘图
  2. VTK:vtkArrayCalculator用法实战
  3. OpenCASCADE绘制测试线束:图形命令之AIS 查看器——对象命令
  4. OpenCASCADE:OCCT应用框架OCAF之函数机制使用示例
  5. OpenCASCADE:形状愈合之修复
  6. wxWidgets:wxRegKey类用法
  7. boost::hana::div用法的测试程序
  8. VTK:可视化之AnnotatedCubeActor
  9. VTK:IO之ReadPlainTextTriangles
  10. VTK:图表之BoostBreadthFirstSearchTree