Python 修改x轴和y轴以减小值之间的间隙

Python 修改x轴和y轴以减小值之间的间隙,python,matplotlib,seaborn,Python,Matplotlib,Seaborn,我用下面的代码创建了一个sns图 fig=sns.lineplot(data=zrrgroupby,x='filedate',y='ResourceName',hue='location') filedate是一个月内每个星期一的数据。是否可以使用某种标识符或更小的网格来表示它 类似地,y轴是ResourceName,它除了ResourceCount之外什么都不是。我能把它分解成更小的部分吗 电流输出: 期望输出: 两个月之间的线表示每个星期一生成数据时该月发生的星期一。在两个轴的刻度位置

我用下面的代码创建了一个sns图

fig=sns.lineplot(data=zrrgroupby,x='filedate',y='ResourceName',hue='location')
filedate是一个月内每个星期一的数据。是否可以使用某种标识符或更小的网格来表示它

类似地,y轴是
ResourceName
,它除了
ResourceCount
之外什么都不是。我能把它分解成更小的部分吗

电流输出:

期望输出:


两个月之间的线表示每个星期一生成数据时该月发生的星期一。

在两个轴的刻度位置绘制网格线。有两个级别的刻度:主刻度(通常有标签)和次刻度(介于两者之间)

对于水平网格线,可以使用10的倍数放置辅助记号。对于垂直网格线,可以为每个星期一设置第二个勾号。请注意,当辅助记号与主记号重合时,它们将被抑制

from matplotlib import pyplot as plt
from matplotlib.ticker import MultipleLocator
from matplotlib.dates import MO, WeekdayLocator
import seaborn as sns
import numpy as np
import pandas as pd

sns.set()
sns.set_style('darkgrid')
dates = pd.date_range('2020-01-01', '2020-07-01', freq='D')
N = len(dates)
df = pd.DataFrame({'Date': np.repeat(dates, 2),
                   'Resource': np.random.uniform(-3, 3.1, 2 * N).cumsum() + np.tile([50, 130], N),
                   'Location': np.tile(['loc A', 'loc B'], N)})
ax = sns.lineplot(data=df, x='Date', y='Resource', hue='Location')
ax.yaxis.set_minor_locator(MultipleLocator(10))
ax.xaxis.set_minor_locator(WeekdayLocator(byweekday=(MO)))
ax.grid(True, which='major', lw=1, color='darkgrey')
ax.grid(True, which='minor', lw=1, ls=':', color='darkgrey')

plt.show()