Matplotlib是Python中令人惊叹的可视化库,用于数组的二维图。 Matplotlib是一个基于NumPy数组的多平台数据可视化库,旨在与更广泛的SciPy堆栈配合使用。
matplotlib.ticker.LogFormatter
这个 matplotlib.ticker.LogFormatter
类用于格式化对数或符号对数刻度的刻度。它或者直接实例化,或者被子类化。
语法:class matplotlib.ticker.LogFormatter(base = 10.0,labelOnlyBase = False,minor_thresholds = None,linthresh = None)
Parameters:
- base:它是用于所有计算的对数底的可选浮点值。默认情况下为10。
- labelOnlyBase:它是一个可选的布尔值,如果将其设置为True,则标签仅在整数的幂为底数时打勾。通常,对于大刻度线,它为True;对于小刻度线,它为False。默认情况下为False。
- minor_thresholds:它是两个值(即,子集,全部)的可选元组。如果将labelOnlyBase设置为False,则这两个数字将指示刻度的标签,而不是基数的整数次幂;通常,这些是较小的滴答声。轴数据范围的对数是控制参数。
- linthresh:如果使用对称对数刻度,则必须提供此参数。
该类的方法:
- format_data(self, value):它返回该值的未指定位置的完整字符串表示形式。
- format_data_short(self, value):它返回数字的短格式字符串表示形式。
- label_minor(self, labelOnlyBase):它用于打开或关闭次要刻度标签。
- set_locs(self, locs=None):它使用轴视图控制刻度线的标签。
范例1:
import numpy as np
import matplotlib.pyplot as plt
from matplotlib.ticker import LogFormatterSciNotation
class CustomTicker(LogFormatterSciNotation):
def __call__(self, x, pos = None):
if x not in [0.1, 1, 10]:
return LogFormatterSciNotation.__call__(self, x, pos = None)
else:
return "{x:g}".format(x = x)
fig = plt.figure(figsize =[7, 7])
ax = fig.add_subplot(111)
ax.set_yscale('log')
ax.set_xscale('log')
ax.plot(np.logspace(-4, 4), np.logspace(-4, 4))
ax.xaxis.set_major_formatter(CustomTicker())
plt.show()
输出:
范例2:
import matplotlib.pyplot as plt
from matplotlib.ticker import LogFormatter
import numpy as np
fig, axes = plt.subplots(4, figsize =(12, 24))
dt = 0.01
t = np.arange(dt, 20.0, dt)
# first plot doesn't use a formatter
axes[0].semilogx(t, np.exp(-t / 5.0))
axes[0].set_xlim([0, 25])
axes[0].grid()
xlims = [[0, 25], [0.2, 8], [0.6, 0.9]]
for ax, xlim in zip(axes[1:], xlims):
ax.semilogx(t, np.exp(-t / 5.0))
formatter = LogFormatter(labelOnlyBase = False,
minor_thresholds = (2, 0.4))
ax.get_xaxis().set_minor_formatter(formatter)
ax.set_xlim(xlim)
ax.grid()
plt.show()
输出:
相关用法
- Python Matplotlib.ticker.MultipleLocator用法及代码示例
- Python Matplotlib.gridspec.GridSpec用法及代码示例
- Python Matplotlib.patches.CirclePolygon用法及代码示例
- Python Matplotlib.colors.Normalize用法及代码示例
注:本文由纯净天空筛选整理自RajuKumar19大神的英文原创作品 Matplotlib.ticker.LogFormatter Class in Python。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。