标签: seaborn

如何更改seaborn图的图形大小?

如何更改图像的大小以使其适合打印?

例如,我想使用A4纸,其横向尺寸为11.7英寸×8.27英寸.

python seaborn

171
推荐指数
13
解决办法
26万
查看次数

Seaborn阴谋没有出现

我确定我忘记了一些非常简单的事情,但我无法获得与Seaborn合作的某些情节.

如果我做:

import seaborn as sns
Run Code Online (Sandbox Code Playgroud)

然后我像matplotlib一样创建的任何绘图都获得了Seaborn样式(背景中的灰色网格).

但是,如果我尝试做其中一个示例,例如:

In [1]: import seaborn as sns

In [2]: sns.set()

In [3]: df = sns.load_dataset('iris')

In [4]: sns.pairplot(df, hue='species', size=2.5)
Out[4]: <seaborn.axisgrid.PairGrid at 0x3e59150>
Run Code Online (Sandbox Code Playgroud)

pairplot函数返回一个PairGrid对象,但该图不显示.

我有点困惑,因为matplotlib似乎运行正常,Seaborn样式应用于其他matplotlib图,但Seaborn函数似乎没有做任何事情.有没有人知道可能是什么问题?

python matplotlib seaborn

165
推荐指数
5
解决办法
15万
查看次数

如何将Seaborn绘图保存到文件中

我尝试了以下代码(test_seaborn.py):

import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt
matplotlib.style.use('ggplot')
import seaborn as sns
sns.set()
df = sns.load_dataset('iris')
sns_plot = sns.pairplot(df, hue='species', size=2.5)
fig = sns_plot.get_figure()
fig.savefig("output.png")
#sns.plt.show()
Run Code Online (Sandbox Code Playgroud)

但我得到这个错误:

  Traceback (most recent call last):
  File "test_searborn.py", line 11, in <module>
    fig = sns_plot.get_figure()
AttributeError: 'PairGrid' object has no attribute 'get_figure'
Run Code Online (Sandbox Code Playgroud)

我希望决赛output.png将会存在,看起来像这样:

在此输入图像描述

我该如何解决这个问题?

python matplotlib pandas seaborn

131
推荐指数
8
解决办法
15万
查看次数

在seaborn factorplot中旋转标签文本

我有一个简单的factorplot

import seaborn as sns
g = sns.factorplot("name", "miss_ratio", "policy", dodge=.2, 
    linestyles=["none", "none", "none", "none"], data=df[df["level"] == 2])
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

问题是x标签全部一起运行,使它们不可读.如何旋转文本以使标签可读?

matplotlib seaborn

121
推荐指数
7
解决办法
12万
查看次数

Seaborn Barplot上的标签轴

我正在尝试使用我自己的标签来制作Seaborn条形图,其代码如下:

import pandas as pd
import seaborn as sns

fake = pd.DataFrame({'cat': ['red', 'green', 'blue'], 'val': [1, 2, 3]})
fig = sns.barplot(x = 'val', y = 'cat', 
                  data = fake, 
                  color = 'black')
fig.set_axis_labels('Colors', 'Values')
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

但是,我得到一个错误:

AttributeError: 'AxesSubplot' object has no attribute 'set_axis_labels'
Run Code Online (Sandbox Code Playgroud)

是什么赋予了?

python matplotlib seaborn

95
推荐指数
4
解决办法
15万
查看次数

使用matplotlib面向对象的界面用seaborn绘图

我更喜欢使用matplotlibOOP风格:

f, axarr = plt.subplots(2, sharex=True)
axarr[0].plot(...)
axarr[1].plot(...)
Run Code Online (Sandbox Code Playgroud)

这样可以更轻松地跟踪多个图形和子图.

问题:如何使用seaborn这种方式?或者,如何将此示例更改为OOP样式?如何将seaborn绘图函数描述为lmplot哪个Figure或哪个Axes绘图?

python oop matplotlib seaborn

93
推荐指数
1
解决办法
6万
查看次数

如何为Seaborn Facet Plot添加标题

如何为此Seaborne图添加标题?让我们给它一个标题'我是一个标题'.

tips = sns.load_dataset("tips")
g = sns.FacetGrid(tips, col="sex", row="smoker", margin_titles=True)
g.map(sns.plt.scatter, "total_bill", "tip")
Run Code Online (Sandbox Code Playgroud)

情节

python visualization seaborn

78
推荐指数
3
解决办法
6万
查看次数

如何在Seaborn lmplot facetgrid中设置一些xlim和ylim

我正在使用Seaborn的lmplot绘制线性回归,将我的数据集分成两组,并带有分类变量.

对于x和y,我想在两个图上手动设置下限,但是将上限保留在Seaborn默认值上.这是一个简单的例子:

import pandas as pd
import seaborn as sns
import random

n = 200
random.seed(2014)
base_x = [random.random() for i in range(n)]
base_y = [2*i for i in base_x]
errors = [random.uniform(0,1) for i in range(n)]
y = [i+j for i,j in zip(base_y,errors)]

df = pd.DataFrame({'X': base_x,
                   'Y': y,
                   'Z': ['A','B']*(n/2)})

mask_for_b = df.Z == 'B'
df.loc[mask_for_b,['X','Y']] = df.loc[mask_for_b,] *2

sns.lmplot('X','Y',df,col='Z',sharex=False,sharey=False)
Run Code Online (Sandbox Code Playgroud)

这输出如下: 在此输入图像描述

但在这个例子中,我希望xlim和ylim为(0,*).我尝试使用sns.plt.ylim和sns.plt.xlim但这些只影响右手图.例:

sns.plt.ylim(0,)
sns.plt.xlim(0,)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

如何访问FacetGrid中每个绘图的xlim和ylim?

python pandas seaborn

69
推荐指数
2
解决办法
10万
查看次数

如何为seaborn boxplot添加标题

看起来很漂亮但是无法在网上找到有用的东西.

我都试过sns.boxplot('Day', 'Count', data= gg).title('lalala')sns.boxplot('Day', 'Count', data= gg).suptitle('lalala').没有用.我想这可能是因为我也在使用matplotlib.

matplotlib pandas seaborn

64
推荐指数
5
解决办法
10万
查看次数

如何在不更改matplotlib默认值的情况下使用seaborn?

我试图使用seaborn,因为它的distplot功能.但我更喜欢默认的matplotlib设置.当我导入seaborn时,它会自动改变我的身材的外观.

如何在不改变图形外观的情况下使用seaborn功能?

python matplotlib seaborn

63
推荐指数
2
解决办法
6506
查看次数

标签 统计

seaborn ×10

python ×8

matplotlib ×7

pandas ×3

oop ×1

visualization ×1