问题遇到的现象和发生背景
我想解决x轴重叠的问题 因为数据比较多 旋转x轴和缩小字体治标不治本 我想让x轴在不断变化的过程中 比如x轴的坐标超10个了 就让第2 4 6 8这些坐标的x轴坐标不显示 x坐标就剩下5个 等x坐标再超10个 继续这样减少5个 类似这样把x轴自动缩小 我该怎么解决这个问题
问题相关代码,请勿粘贴截图
import matplotlib.pyplot as plt
import pandas as pd
from matplotlib.ticker import MultipleLocator, FormatStrFormatter
path = '数据.csv'
# 使用pandas读入
data = pd.read_csv(path,encoding="unicode_escape") #读取文件中所有数据
a= data['shijian'] #读取某两列
b=data['jicunjinshishi']
c=data['ruyijinshishi']
d=data['jicunjindingqi']
e=data['ruyijinshuhui']
plt.figure(figsize=(16,10),dpi=100)
xmajorLocator= MultipleLocator(1) #将x主刻度标签设置为1的倍数
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus'] =False
# p1= plt.subplot(111)
p1= plt.axes([0.06,0.12,0.7,0.75])
p2= plt.axes([0.8,0.58,0.18,0.3])
p3= plt.axes([0.8,0.12,0.18,0.3])
pointcount=5
x=[]
print(x)
y1=[]
y2=[]
y3=[]
y4=[]
y5=[]
for i in range(0,len(a)):
x.append(a[i])
y1.append(b[i])
y2.append(c[i])
y3.append(d[i])
y4.append(e[i])
y5.append(c[i]-b[i])
p1.grid(True)
A, = p1.plot(x, y1, "g-")
B, = p1.plot( x,y2, "b-") # 设置主刻度标签的位置,标签文本的格式\
C, = p1.plot( x,y3, "r-")
D, = p1.plot( x,y4, "y-")
p1.xaxis.set_major_locator(xmajorLocator)
legend = p1.legend(handles=[A, B, C, D], labels=["积存金实时价格-赎回价格", "如意金实时价格", "积存金定期价格", "如意金赎回价格"])
p1.set_xlabel("每五分钟更新一次数据", fontsize=14)
p1.set_ylabel("价格", fontsize=14)
p1.set_title("如意积存金、积存金价格信息", fontsize=23)
E, = p2.plot(y5, "g-")
p2.xaxis.set_major_locator(xmajorLocator)
p2.set_xlabel("每五分钟更新一次数据", fontsize=10)
p2.set_ylabel("价格", fontsize=10)
p2.set_title("如意金-积存金价格差", fontsize=14)
plt.pause(0.4)
plt.tight_layout(pad=4, w_pad=4.0, h_pad=3.0)
运行结果及报错内容
x轴重叠
我的解答思路和尝试过的方法
我想要达到的结果
让x轴在不断变化的过程中 比如x轴的坐标超10个了 就让第2 4 6 8这些坐标的x轴坐标不显示 x坐标就剩下5个 等x坐标再超10个 继续这样减少5个 类似这样把x轴自动缩小