标签: seaborn

DataFrames中的点框图

在大熊猫Dataframes有一个箱线图的方法,但没有任何方法来创建点箱线在熊猫,或以其他方式seaborn

通过点框图,我的意思是一个箱线图,它显示了图中的实际数据点(或它们的相关样本),例如下面的例子(在R中获得).

在此输入图像描述

python matplotlib pandas seaborn

12
推荐指数
2
解决办法
7900
查看次数

在Seaborn Jointplot上绘制对角线(相等的线)

我正在使用seaborn jointplot进行散点图绘制,但我似乎无法得到一条简单的对角线...我正在得到一个AttributeError: 'JointGrid' object has no attribute 'get_xlim'.有没有人知道使用Seaborn的解决方法?

这是我的代码(标题也没有出现!给出了什么):

ax = sns.jointplot(x="Av Tomato-meter", y="Av Audience Score", data=director_combined_ratings, stat_func = None, 
                   size = 8, xlim=(0,100), ylim=(0,100))

ax.plot(ax.get_xlim(), ax.get_ylim(), ls="--", c=".3") #this is the error line.

ax.title = "Average Tomato-meter vs Audience Score for Directors with over 10 Movies"
Run Code Online (Sandbox Code Playgroud)

在此先感谢大家.

python matplotlib seaborn

12
推荐指数
1
解决办法
6172
查看次数

如何改变seaborn线性回归关节图中的线条颜色

seaborn API中所述,以下代码将生成线性回归图.

import numpy as np, pandas as pd; np.random.seed(0)
import seaborn as sns; sns.set(style="white", color_codes=True)
tips = sns.load_dataset("tips")
g = sns.jointplot(x="total_bill", y="tip", data=tips, kind='reg')
sns.plt.show()
Run Code Online (Sandbox Code Playgroud)

但是,由于有很多数据点,回归线不再可见.我怎样才能改变它的颜色?我找不到内置的seaborn命令.

如果线在背景中(即在点后面),我还想问如何将它带到前面.

matplotlib seaborn

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

改变seaborn热图中的某些方块

假设我有一个看起来像这样的热图(轴被修剪掉): 在此输入图像描述

我希望能够改变某些方块以表示统计显着性.我知道我可以掩盖不具有统计意义的方块,但我仍然希望保留该信息(而不是将值设置为零).执行此操作的选项包括1)使某些正方形上的文本变粗,2)添加类似阴影的功能,以便某些正方形具有点画,或3)向某些正方形添加符号.

有什么想法吗?谢谢!

python matplotlib heatmap pandas seaborn

12
推荐指数
2
解决办法
5597
查看次数

用seaborn绘图时如何处理缺失值?

我使用lambda跟随函数用NaN替换了缺少的值:

data = data.applymap(lambda x: np.nan if isinstance(x, basestring) and x.isspace() else x)

,数据是我正在处理的数据帧.

之后使用seaborn,我尝试绘制其中一个属性,使用seaborn.distplot进行alcconsumption,如下所示:

seaborn.distplot(data['alcconsumption'],hist=True,bins=100)
plt.xlabel('AlcoholConsumption')
plt.ylabel('Frequency(normalized 0->1)')
Run Code Online (Sandbox Code Playgroud)

它给了我以下错误:

AttributeError: max must be larger than min in range parameter.
Run Code Online (Sandbox Code Playgroud)

python data-analysis python-2.7 pandas seaborn

12
推荐指数
2
解决办法
1万
查看次数

交互式条件直方图桶切片数据可视化

我有一个看起来像的df:

df.head()
Out[1]:
        A   B   C
city0   40  12  73
city1   65  56  10
city2   77  58  71
city3   89  53  49
city4   33  98  90
Run Code Online (Sandbox Code Playgroud)

可以通过以下代码创建示例df:

df = pd.DataFrame(np.random.randint(100,size=(1000000,3)), columns=list('ABC'))

indx = ['city'+str(x) for x in range(0,1000000)]
df.index = indx
Run Code Online (Sandbox Code Playgroud)

我想做的是:

a)确定A列的适当直方图桶长度,并将每个城市分配给A列的桶

b)确定B列的适当直方图桶长度,并将每个城市分配给B列的桶

也许结果df看起来像(或者是否有更好的内置方式在熊猫?)

    df.head()
    Out[1]:
            A   B   C  Abkt Bbkt
    city0   40  12  73  2  1
    city1   65  56  10  4  3
    city2   77  58  71  4  3
    city3   89  53  49  5  3
    city4   33  98  90 …
Run Code Online (Sandbox Code Playgroud)

python data-visualization pandas bokeh seaborn

12
推荐指数
2
解决办法
1936
查看次数

增加seaborn中的刻度标签字体大小

我的seaborn情节有一个很大的问题.由于某种原因,沿轴的数字打印的字体非常小,这使得它们不可读.我试着用它来扩展它们

with plt.rc_context(dict(sns.axes_style("whitegrid"),
                     **sns.plotting_context(font_scale=5))):
    b = sns.violinplot(y="Draughts", data=dr)
Run Code Online (Sandbox Code Playgroud)

没有帮助,这只会使轴文本更大,而不是沿轴的数字. 见图

python seaborn

12
推荐指数
3
解决办法
2万
查看次数

通过pip安装最新版本的seaborn(0.9.0)

我想用seaborn包创建一个catplot,我知道为了能够做到这一点,我需要最新版本的seaborn(0.9.0).我用conda安装了包:

 conda install seaborn 
Run Code Online (Sandbox Code Playgroud)

但它下载的版本为0.8.1.

因此我使用pip安装了我想要的版本:

 pip3 install seaborn==0.9.0
Run Code Online (Sandbox Code Playgroud)

但是每当我运行我的代码时,我都会遇到同样的错误: AttributeError:module'seaborn'没有属性'catplot'(仅在最新版本中提供的属性).

有人可以帮忙吗?

python seaborn

12
推荐指数
1
解决办法
2万
查看次数

如何为数据框中的所有列绘制 Seaborn Distplots 矩阵

想象一下,我有一个包含 9 列的数据框。我希望能够达到与 df.hist() 相同的效果,但使用 sns.distplot()。

换句话说,我希望能够在 3 行 3 列的可视化中绘制数据框中每一列的 sns.distplot(),其中每个子图代表每列的唯一 sns.distplot() 总计数据框中的列数。

我对数据框的轴和列使用 for 循环进行了一些试验,但我只能获得指定列的结果。我不确定如何表示适用于行和列的代码。

我还研究了 sns.FacetGrid,但我不确定如何使用 FacetGrid 解决这个问题。

我发现 df.hist() 函数正是我想要的,但我希望能够使用 sns.distplot 来完成与 df.hist() 输出相同的表示形式中的所有列。

如果它有助于放置数据框的上下文,我基本上是在阅读 Google Colab 的加利福尼亚住房数据集的训练和测试集,其中包含除 Ocean_proximity 之外的所有列。如果您想使用该数据集帮助我解决这个问题,请从 Kaggle 获取并删除 Ocean_proximity 列。

我的 9 列方法:

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

df = pd.read_csv('housing.csv')
df.drop('ocean_proximity', axis=1, inplace=True)
fig, axes = plt.subplots(ncols=len(df.columns), figsize=(30,15))
for ax, col in zip(axes, df.columns):
  sns.distplot(df[col], ax=ax)
  plt.tight_layout() 
plt.show()
Run Code Online (Sandbox Code Playgroud)

python pandas seaborn

12
推荐指数
2
解决办法
1万
查看次数

熊猫 style.background_gradient 忽略 NaN

我有以下代码将数据帧转储results到 HTML 表格中,以便TIME_FRAMES根据 seaborn 的颜色图对其中的列进行着色。

import seaborn as sns

TIME_FRAMES = ["24h", "7d", "30d", "1y"]

# Set CSS properties for th elements in dataframe
th_props = [
    ('font-size', '11px'),
    ('text-align', 'center'),
    ('font-weight', 'bold'),
    ('color', '#6d6d6d'),
    ('background-color', '#f7f7f9')
]

# Set CSS properties for td elements in dataframe
td_props = [
    ('font-size', '11px')
]


cm = sns.light_palette("green", as_cmap=True)
s = (results.style.background_gradient(cmap=cm, subset=TIME_FRAMES)
                  .set_table_styles(styles))
a = s.render()
with open("test.html", "w") as f:
    f.write(a)
Run Code Online (Sandbox Code Playgroud)

由此,我收到警告:

/python3.7/site-packages/matplotlib/colors.py:512: RuntimeWarning: 在less xa[xa …

python pandas seaborn

12
推荐指数
2
解决办法
2241
查看次数