python折线图的横纵轴刻度如何另外修改?

img

img


p1是现在的效果 每个点的横轴数据都记在刻度上 显得很挤
p2是想达到的效果

设置 xticks(横坐标轴刻度)
看看这个
https://blog.csdn.net/qq_38048756/article/details/117718395?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522165907791416782388054065%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=165907791416782388054065&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~first_rank_ecpm_v1~rank_v31_ecpm-2-117718395-null-null.142^v35^control&utm_term=%20xticks%EF%BC%88%E6%A8%AA%E5%9D%90%E6%A0%87%E8%BD%B4%E5%88%BB%E5%BA%A6%EF%BC%89&spm=1018.2226.3001.4449
官方文档
https://matplotlib.org/stable/index.html

你是想让横坐标显示日期格式吧,那直接重置lable就可以
plt.xticks(range(len(x_lable)), x_lable)
plt.xticks(rotation=45)
“x_lable”是日期列(可以是list也可以是series),但是日期的格式需要是str类型(datetime类型会报错),如果日期列是series类型,那么直接series_data.astype(str)
当然x_lable不仅可以是日期,自己设定的任何数据都可以

横坐标名称太长出现重叠,解决方法有几种:
1、添加:ax.xaxis.set_major_locator(ticker.MultipleLocator(base=10))
base=10是x轴显示的间隔:
2、plt.xticks(rotation=30) # 横坐标名称旋转30度
3、fig.autofmt_xdate() # 绘制斜的日期标签
你按自己实际情况试试哪种解决方式比较合适