我有这个与seaborn的facetgrid的数据框图:
import seaborn as sns import matplotlib.pylab as plt import pandas import numpy as np plt.figure() df = pandas.DataFrame({"a": map(str,np.arange(1001,1001 + 30)),"l": ["A"] * 15 + ["B"] * 15,"v": np.random.rand(30)}) g = sns.FacetGrid(row="l",data=df) g.map(sns.pointplot,"a","v") plt.show()
seaborn绘制了所有的xtick标签,而不仅仅是挑选几个,它看起来很糟糕:
有没有办法对它进行自定义,以便在x轴上绘制每个第n个刻度而不是全部?
解决方法
seaborn.pointplot不是这个情节的正确工具.但答案很简单:使用基本的matplotlib.pyplot.plot函数:
import seaborn as sns import matplotlib.pylab as plt import pandas import numpy as np df = pandas.DataFrame({"a": np.arange(1001,1001 + 30),data=df) g.map(plt.plot,"v",marker="o") g.set(xticks=df.a[2::8])