Python Matplotlib设置坐标轴范围,以及旋转轴标签(xtickslabels)

前言

创作开始时间:2021年3月31日15:42:00

如题。核心代码:plt.xticks(my_x_ticks)plt.xticks(rotation = 45)

正文

比较简单,直接给代码

# 坐标轴范围,可以用np.arrange,也可以用np.linspace
my_x_ticks = np.arange(min_low, max_val, get_upper_lower_int((max_low - min_low)/20)[1])
    #my_x_ticks = np.linspace(get_upper_lower_int(min_val)[1], get_upper_lower_int(max_val)[0], 20)
    # 设置坐标轴范围
    plt.xticks(my_x_ticks)
    # 旋转坐标轴标签
    plt.xticks(rotation = 45)

小结

创作结束时间:

参考文献

  • Rotate Axis Labels in Matplotlib https://stackabuse.com/rotate-axis-labels-in-matplotlib/
  • Rotate axis text in python matplotlib https://stackoverflow.com/questions/10998621/rotate-axis-text-in-python-matplotlib
  • How to set an axis interval range using Matplotlib or other libraries in python [duplicate] https://stackoverflow.com/questions/18551633/how-to-set-an-axis-interval-range-using-matplotlib-or-other-libraries-in-python
  • Change grid interval and specify tick labels in Matplotlib https://stackoverflow.com/questions/24943991/change-grid-interval-and-specify-tick-labels-in-matplotlib
  • Python生成等间隔列表 数组numpy.linspace(start, end, interval)函数 https://blog.csdn.net/qq_43511299/article/details/114179294
### 如何在 Python Matplotlib设置或自定义坐标轴 #### 设置坐标轴范围 为了控制图表中的数据展示区域,可以使用 `plt.xlim()` 和 `plt.ylim()` 函数来分别设定 X 轴和 Y 轴的最大最小值。这有助于聚焦于特定的数据区间。 ```python import matplotlib.pyplot as plt # 创建一些测试数据 x = [1, 2, 3, 4, 5] y = [2, 3, 5, 7, 11] # 绘制图形并调整坐标轴范围 plt.figure() plt.plot(x, y) # 设定X轴的取值范围是从0到6;Y轴的是从0至12 plt.xlim(0, 6) plt.ylim(0, 12) plt.show() # 显示图像 ``` #### 定义主次刻度位置 对于更精细地控制图表外观而言,可以通过指定主要(`major`)与次要(`minor`)tick的位置来自定义它们: - 使用`set_xticks()`/`set_yticks()`函数可改变默认的主要刻度线; - 对于添加额外的小间隔,则需借助`AutoMinorLocator`类实现自动布局或是通过列表形式手动输入各个副刻度的具体数值[^1]。 ```python from matplotlib.ticker import AutoMinorLocator fig, ax = plt.subplots() ax.plot(x, y) # 主要刻度每单位增加一次标记 ax.set_xticks(range(min(x), max(x)+1)) ax.set_yticks(range(min(y), max(y)+1)) # 启用两个方向上的辅助分隔符 ax.xaxis.set_minor_locator(AutoMinorLocator()) ax.yaxis.set_minor_locator(AutoMinorLocator()) plt.grid(True, which='both') # 开启网格以便观察效果 plt.show() ``` #### 自定义刻度标签格式 除了更改刻度所在之处外,还可以进一步美化其呈现方式,比如旋转文字角度、调整字体大小以及颜色等属性。此外,如果希望对某些特殊点做特别标注的话,也可以单独处理相应的 tick label[^2]。 ```python import matplotlib.ticker as ticker def format_func(value, tick_number): return f'${value:.2f}$' fig, ax = plt.subplots() ax.plot(x, y) # 应用自定义格式器给Y轴 ax.yaxis.set_major_formatter(ticker.FuncFormatter(format_func)) for tick in ax.get_xticklabels(): tick.set_rotation(45) # 文字倾斜45度角 tick.set_fontsize('small') # 字体变小一点 plt.tight_layout() # 避免裁剪掉部分元素 plt.show() ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值