设置轴标记seaborn jointplot的值

时间:2015-12-10 18:27:33

标签: python numpy pandas matplotlib seaborn

我正在尝试使我的关节图的x和y轴(包括轴刻度值)以特定值开始和结束,并以设定的增量进行缩放。

import pandas as pd
import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt

g = sns.jointplot(x="LONGITUDE", y="LATITUDE", data=data,
                      kind='reg', color="#774499", dropna=True, size=7, space=0.3, ratio=5,
                      xlim=(-180,180), ylim=(-90,90), fit_reg=False);
plt.rc("legend", fontsize=15)
plt.xlabel('Longitude', fontsize=15)
plt.ylabel('Latitude', fontsize=15)
plt.title('Spatial Location Plot', fontsize=15 )
plt.tick_params(axis="both", labelsize=15)

This is what I get

请注意,两个轴的下边缘和上边缘没有任何刻度值。我想要使​​用我在xlim()和ylim()中指定的值精确地在轴边缘开始和结束刻度值。

对于X轴和Y轴,我的首选增量分别为90度和45度。所以,我希望X轴看起来像这样:-180,-90,0,90,180。 并且Y轴为:-90,-45,0,45,90。感谢您的建议。

1 个答案:

答案 0 :(得分:2)

您可以使用matplotlib.ticker在轴上设置major_locatorJointGridjointplot)返回的g具有ax_joint属性,我们可以使用该属性来设置刻度。要设置每个数字的刻度,我们可以使用MultipleLocator

import matplotlib.ticker as ticker
g.ax_joint.xaxis.set_major_locator(ticker.MultipleLocator(90))
g.ax_joint.yaxis.set_major_locator(ticker.MultipleLocator(45))