如何为matplotlib.pypplot.scatter()设置X和Y间隔?
How to set X and Y intervals for matplotlib.pypplot.scatter()?
我有以下代码用于绘制两个变量 'field_size' 和 'field_mean_LAI':
plt.figure(figsize=(20,10))
plt.scatter(df.field_size, df.field_lai_mean)
plt.title("Field Size and LAI Plot")
plt.xlabel("Field Size")
plt.ylabel("Mean LAI")
plt.show()
结果是散点图:
"
如何配置 x 和 y 间隔并更改绘图的颜色??我是 python 绘图的初学者。
所以我修改了我的代码如下:
plt.figure(figsize=(20,10))
plt.scatter(df.field_size, df.field_lai_mean)
plt.title("Field Size and LAI Plot")
plt.xlabel("Field Size")
plt.ylabel("Mean LAI")
plt.xticks(np.arange(0.00000,0.00013,step=0.000008))
plt.yticks(np.arange(0,8.5,step=0.5))
plt.show()
现在我有这样的情节:
刚刚定义了xticks和yticks函数,很顺利! :)
要更改绘图点的颜色,您可以使用 color 属性(见下文)。
要设置两个轴的限制,可以传递xlim和ylim参数
在创建子图时。
另请注意,我在这里还传递了 rot 参数,以设置 x 标签旋转。
并配置 x 和 y 间隔,您可以使用例如多重定位器,
对于 major 和 minor ticks。还有其他定位器,
在网上搜索详细信息。
您可以设置的其他元素也是网格(就像我所做的那样)。
因此您可以将代码更改为:
import matplotlib.pyplot as plt
import matplotlib.ticker as tck
fig = plt.figure(figsize=(10,5))
ax = plt.subplot(xlim=(-0.000003, 0.000123), ylim=(-0.5, 9))
df.plot.scatter(x='field_size', y='field_lai_mean', rot=30, color='r', ax=ax)
plt.title("Field Size and LAI Plot")
plt.xlabel("Field Size")
plt.ylabel("Mean LAI")
ax = plt.gca()
ax.yaxis.set_major_locator(tck.MultipleLocator(2))
ax.yaxis.set_minor_locator(tck.MultipleLocator(0.4))
ax.xaxis.set_major_locator(tck.MultipleLocator(0.00001))
ax.xaxis.set_minor_locator(tck.MultipleLocator(0.0000025))
ax.grid()
plt.show()
当然,根据您的需要调整传递的值。
对于一组非常有限的点,我得到了下图:
我有以下代码用于绘制两个变量 'field_size' 和 'field_mean_LAI':
plt.figure(figsize=(20,10))
plt.scatter(df.field_size, df.field_lai_mean)
plt.title("Field Size and LAI Plot")
plt.xlabel("Field Size")
plt.ylabel("Mean LAI")
plt.show()
结果是散点图:
"
如何配置 x 和 y 间隔并更改绘图的颜色??我是 python 绘图的初学者。
所以我修改了我的代码如下:
plt.figure(figsize=(20,10))
plt.scatter(df.field_size, df.field_lai_mean)
plt.title("Field Size and LAI Plot")
plt.xlabel("Field Size")
plt.ylabel("Mean LAI")
plt.xticks(np.arange(0.00000,0.00013,step=0.000008))
plt.yticks(np.arange(0,8.5,step=0.5))
plt.show()
现在我有这样的情节:
刚刚定义了xticks和yticks函数,很顺利! :)
要更改绘图点的颜色,您可以使用 color 属性(见下文)。
要设置两个轴的限制,可以传递xlim和ylim参数 在创建子图时。
另请注意,我在这里还传递了 rot 参数,以设置 x 标签旋转。
并配置 x 和 y 间隔,您可以使用例如多重定位器, 对于 major 和 minor ticks。还有其他定位器, 在网上搜索详细信息。
您可以设置的其他元素也是网格(就像我所做的那样)。
因此您可以将代码更改为:
import matplotlib.pyplot as plt
import matplotlib.ticker as tck
fig = plt.figure(figsize=(10,5))
ax = plt.subplot(xlim=(-0.000003, 0.000123), ylim=(-0.5, 9))
df.plot.scatter(x='field_size', y='field_lai_mean', rot=30, color='r', ax=ax)
plt.title("Field Size and LAI Plot")
plt.xlabel("Field Size")
plt.ylabel("Mean LAI")
ax = plt.gca()
ax.yaxis.set_major_locator(tck.MultipleLocator(2))
ax.yaxis.set_minor_locator(tck.MultipleLocator(0.4))
ax.xaxis.set_major_locator(tck.MultipleLocator(0.00001))
ax.xaxis.set_minor_locator(tck.MultipleLocator(0.0000025))
ax.grid()
plt.show()
当然,根据您的需要调整传递的值。
对于一组非常有限的点,我得到了下图: