Python seaborn,pylab-将XTICK从浮点更改为整数
我正在用seaborn作为sns和pylab作为plt绘制一张图:Python seaborn,pylab-将XTICK从浮点更改为整数,python,matplotlib,seaborn,Python,Matplotlib,Seaborn,我正在用seaborn作为sns和pylab作为plt绘制一张图: plt.figure(figsize=(10,10),) sns.barplot(y = 'whatever_y', x = 'whatever_x' , data=mydata) plt.xticks(fontsize=14, fontweight='bold') XTick应该是0,1,2,3,但它们是这样绘制的:0.0,1.0,2.0,3.0 有人知道我需要加什么才能得到整数吗(数据是一个数据帧)谢谢您可以使用axis格
plt.figure(figsize=(10,10),)
sns.barplot(y = 'whatever_y', x = 'whatever_x' , data=mydata)
plt.xticks(fontsize=14, fontweight='bold')
XTick应该是0,1,2,3,但它们是这样绘制的:0.0,1.0,2.0,3.0
有人知道我需要加什么才能得到整数吗(数据是一个数据帧)谢谢您可以使用axis格式化程序执行此操作:
from matplotlib.ticker import FuncFormatter
然后,在条形图线之后:
plt.gca().xaxis.set_major_formatter(FuncFormatter(lambda x, _: int(x)))
以下是使用matplotlib修复刻度的直观方法:
import matplotlib.pyplot as plt
plt.scatter(x,y)
plt.xticks(np.arange(min(x), max(x)+1, 1))
plt.yticks(np.arange(min(y), max(y)+1, 1))
代码在seaborn图形后面的同一单元格中(如果是jupyter笔记本电脑),因为seaborn使用matplotlib后端,所以代码可以正常工作。该指南说明了如何操作facetgrid: 行“g.set”接受xticks参数。 例如,我有一个带有整数1到18的pandas dataframe列,显示为1.0等。 我是这样解决的:
g.set(xticks=list(range(1,19)))
希望这有用。什么是
mydata
?它是一个numpy数组还是其他什么?您可以使用df['x\u col\u name']=df['x\u col\u name']更改列的数据类型。astype(int)
谢谢你的帮助-所以这个问题仍然没有答案,或者有没有办法在seaborn/pylab中将Xtick从float操作到int?是的,你可以操作它们,我想你需要在上使用格式化程序,但我不是matplotlib专家。无论如何,谢谢。我会把问题放在那里——也许有人知道在MatPultLIB中有一个很好的窍门,这个问题是关于西伯恩的,并考虑为你的回答提供解释,也许它不是“La Cr me me de La Cureme”,但是阿图尔的东西是成功的:X= DF[ [ MyVAR1 ] ] PLTHPLANS= SNS.RelPixt(x= x,y=“MyVAR2”,Orth=行)。,data=df,ci=None,aspect=2)plt.xticks(np.arange(最小(x),最大(x)+1,1))
g.set(xticks=list(range(1,19)))