标签: seaborn

seaborn循环通过颜色与matplotlib分散

在进行散点图时,如何获得seaborn颜色?

import matplotlib.pyplot as plt
import seaborn as sns
ax=fig.add_subplot(111)
for f in files:
    ax.scatter(args) # all datasets end up same colour
    #plt.plot(args) #  cycles through palette correctly
Run Code Online (Sandbox Code Playgroud)

python matplotlib seaborn

21
推荐指数
1
解决办法
9633
查看次数

seaborn:背景颜色的传说

以下问题说明如何更改图例的背景颜色: matplotlib图例背景颜色.但是,如果我使用seaborn,这不起作用.有没有办法做到这一点?

import matplotlib.pyplot as plt
import numpy as np
a = np.random.rand(10,1)

plt.plot(a, label='label')
legend = plt.legend()
frame = legend.get_frame()
frame.set_facecolor('green')
plt.show()


import seaborn as sns

plt.plot(a, label='label')
legend = plt.legend()
frame = legend.get_frame()
frame.set_facecolor('green')
plt.show()
Run Code Online (Sandbox Code Playgroud)

用matplotlib 与seaborn

python plot legend seaborn

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

如何在Python Seaborn包中更改数字的大小

我在使用Seaborn增加我的情节数字时遇到了麻烦.我正在使用sns.pairplot来绘制数据帧的列.

    %matplotlib inline
    plt.rcParams['figure.figsize']=10,10
    columns=list(df.columns.values)
    g=sns.pairplot(df, kind='reg', x_vars=columns,y_vars = ['Column 1'])
Run Code Online (Sandbox Code Playgroud)

数据填充的数据很好,但数字太小.我认为plot.rCParams ['figure.figsize']会控制数字的大小,但它似乎没有生效.我尝试了一些来自在线主板的不同建议,但似乎没有任何效果.

python plot seaborn

21
推荐指数
5
解决办法
3万
查看次数

如何使用`lmplot`绘制线性回归而不拦截?

lmplot在seaborn拟合回归模型的截距.但是,有时我想要在没有截距的情况下拟合回归模型,即通过原点进行回归.

例如:

In [1]: import numpy as np
   ...: import pandas as pd
   ...: import seaborn as sns
   ...: import matplotlib.pyplot as plt
   ...: import statsmodels.formula.api as sfa
   ...: 

In [2]: %matplotlib inline
In [3]: np.random.seed(2016)
In [4]: x = np.linspace(0, 10, 32)
In [5]: y = 0.3 * x + np.random.randn(len(x))
In [6]: df = pd.DataFrame({'x': x, 'y': y})
In [7]: r = sfa.ols('y ~ x + 0', data=df).fit()
In [8]: sns.lmplot(x='x', y='y', data=df, fit_reg=True) …
Run Code Online (Sandbox Code Playgroud)

python linear-regression seaborn

21
推荐指数
1
解决办法
1576
查看次数

精确控制学术论文的Seaborn图中的字体大小

我目前正在尝试使用Seaborn为我的学术论文创建情节.这些图看起来很棒且易于生成,但是我遇到的一个问题是对图中的字体大小进行了精细控制.

我的论文中的字体大小为9pt,我想确保我的图中的字体大小为9pt或10pt.但在seaborn中,字体大小主要通过字体缩放来控制sns.set_context("paper", font_scale=0.9).所以除了通过反复试验之外,我很难找到合适的字体大小.有没有更有效的方法来做到这一点?

我还想确保不同的seaborn图之间的字体大小是一致的.但并非所有的seaborn图都具有相同的尺寸,所以看起来在所有图上使用相同的font_scale并不一定会在这些不同的图上创建相同的字体大小?

我在下面附上了我的代码.我很感激有关如何为两栏学术论文格式化图表的任何评论.我的目标是能够控制图形的大小而不会扭曲字体大小或图形.我用Latex写论文.

# Seaborn setting                                                                                                                                              
sns.set(style='whitegrid', rc={"grid.linewidth": 0.1})
sns.set_context("paper", font_scale=0.9)                                                  
plt.figure(figsize=(3.1, 3)) # Two column paper. Each column is about 3.15 inch wide.                                                                                                                                                                                                                                 
color = sns.color_palette("Set2", 6)

# Create a box plot for my data                                                      
splot = sns.boxplot(data=df, palette=color, whis=np.inf,                              
        width=0.5, linewidth = 0.7)

# Labels and clean up on the plot                                                                                                                                                                                                                                                                                              
splot.set_ylabel('Normalized WS')                                                     
plt.xticks(rotation=90)                                                               
plt.tight_layout()                                                                    
splot.yaxis.grid(True, clip_on=False)                                                 
sns.despine(left=True, bottom=True)                                                   
plt.savefig('test.pdf', bbox_inches='tight')                                          
Run Code Online (Sandbox Code Playgroud)

python plot matplotlib seaborn

21
推荐指数
2
解决办法
5万
查看次数

标记在seaborn中的boxplot与中值

如何用中值标记seaborn图中的每个箱图?

例如

import seaborn as sns
sns.set_style("whitegrid")
tips = sns.load_dataset("tips")
ax = sns.boxplot(x="day", y="total_bill", data=tips)
Run Code Online (Sandbox Code Playgroud)

如何用中位数或平均值标记每个箱图?

python matplotlib seaborn

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

如何给sns.clustermap一个预先计算的距离矩阵?

通常当我做树形图和热图时,我使用距离矩阵并做一堆SciPy东西.我想尝试SeabornSeaborn想要我的数据是矩形的(行=样本,cols =属性,而不是距离矩阵)?

我本质上想seaborn用作后端来计算我的树形图并将其粘贴到我的热图上.这可能吗?如果没有,这可能是未来的特色.

也许有我可以调整的参数,所以它可以采用距离矩阵而不是矩形矩阵?

这是用法:

seaborn.clustermap¶
seaborn.clustermap(data, pivot_kws=None, method='average', metric='euclidean',
 z_score=None, standard_scale=None, figsize=None, cbar_kws=None, row_cluster=True,
 col_cluster=True, row_linkage=None, col_linkage=None, row_colors=None,
 col_colors=None, mask=None, **kwargs)
Run Code Online (Sandbox Code Playgroud)

我的代码如下:

from sklearn.datasets import load_iris
iris = load_iris()
X, y = iris.data, iris.target
DF = pd.DataFrame(X, index = ["iris_%d" % (i) for i in range(X.shape[0])], columns = iris.feature_names)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

我不认为我的方法在下面是正确的,因为我给它一个预先计算的距离矩阵,而不是它要求的矩形数据矩阵.没有关于如何使用相关/距离矩阵的示例,clustermap但有https://stanford.edu/~mwaskom/software/seaborn/examples/network_correlations.html,但排序没有与普通sns.heatmap功能集群.

DF_corr = DF.T.corr()
DF_dism = 1 - DF_corr
sns.clustermap(DF_dism)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

python hierarchical-clustering matplotlib heatmap seaborn

21
推荐指数
1
解决办法
6442
查看次数

seaborn boxplot的子图

我有这样的数据帧

import seaborn as sns
import pandas as pd
%pylab inline
df = pd.DataFrame({'a' :['one','one','two','two','one','two','one','one','one','two'], 'b': [1,2,1,2,1,2,1,2,1,1], 'c': [1,2,3,4,6,1,2,3,4,6]})
Run Code Online (Sandbox Code Playgroud)

单个箱图是可以的

sns.boxplot(  y="b", x= "a", data=df,  orient='v' )
Run Code Online (Sandbox Code Playgroud)

但我想为所有变量构建一个子图.我做

names = ['b', 'c']
plt.subplots(1,2)
sub = []
for name in names:

    ax = sns.boxplot(  y=name, x= "a", data=df,  orient='v' )
    sub.append(ax)
Run Code Online (Sandbox Code Playgroud)

我明白了

在此输入图像描述

怎么解决?thanx的帮助

loops boxplot python-3.x seaborn

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

模块Seaborn没有属性'<any graph>'

我无法从ggplot2切换到seaborn.目前使用的是Anaconda v.4.5.8和Python 3.6.3

我找不到任何图表.例如,我可以从seaborn的网站上获取任何代码并运行:

import matplotlib as plt
import seaborn as sns
sns.set(style="ticks")

dots = sns.load_dataset("dots")

# Define a palette to ensure that colors will be
# shared across the facets
palette = dict(zip(dots.coherence.unique(),
                   sns.color_palette("rocket_r", 6)))

# Plot the lines on two facets
sns.relplot(x="time", y="firing_rate",
            hue="coherence", size="choice", col="align",
            size_order=["T1", "T2"], palette=palette,
            height=5, aspect=.75, facet_kws=dict(sharex=False),
            kind="line", legend="full", data=dots)
sns.plt.show() #this was not on site code but tried it(plt.show() as referenced by other posts)
Run Code Online (Sandbox Code Playgroud)

错误信息:

  File "<ipython-input-8-893759310442>", line 13, in <module>
    sns.relplot(x="time", …
Run Code Online (Sandbox Code Playgroud)

python python-3.x seaborn

21
推荐指数
3
解决办法
5万
查看次数

如何用条形图来衡量Seaborn的y轴?

我正在使用factorplot(kind="bar").

如何缩放y轴,例如使用对数刻度?

我试图修补情节的轴,但这总是以某种方式弄乱了条形图,所以请先尝试你的解决方案,以确保它真的有效.

python seaborn

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