seaborn.facetgridを使用して、データフレームの列の値を反映するように、マップされた散布図の色を指定するにはどうすればよいですか?

joelostblom

ポイントの色がプロットされたデータフレームの列によって定義される散布図のFacetGridを作成したいと思います。ただし、列名よりも色の文字列として解釈されるため、マップするときc=パラメータに列名を渡すことができないようですplt.scatter

import seaborn as sns
import matplotlib.pyplot as plt

sns.set(style='white')

iris = sns.load_dataset('iris')
g = sns.FacetGrid(iris, row='species', size=4)
g.map(plt.scatter, 'sepal_width', 'sepal_length', c='petal_length')

でる:

/home/user/anaconda/lib/python2.7/site-packages/matplotlib/colors.pyc in to_rgba_array(self, c, alpha)
    420             result = np.zeros((nc, 4), dtype=np.float)
    421             for i, cc in enumerate(c):
--> 422                 result[i] = self.to_rgba(cc, alpha)
    423             return result
    424 

/home/user/anaconda/lib/python2.7/site-packages/matplotlib/colors.pyc in to_rgba(self, arg, alpha)
    374         except (TypeError, ValueError) as exc:
    375             raise ValueError(
--> 376                 'to_rgba: Invalid rgba arg "%s"\n%s' % (str(arg), exc))
    377 
    378     def to_rgba_array(self, c, alpha=None):

ValueError: to_rgba: Invalid rgba arg "p"
to_rgb: Invalid rgb arg "p"
could not convert string to float: p

私が期待した結果はからと同じでした plt.scatter(iris.sepal_width, iris.sepal_length, c=iris.petal_length)

ここに画像の説明を入力してください

で簡単に試しsns.regplotてみましたが、同じ問題が発生したようです。FacetGridrow=またはcol=パラメーターを指定しない場合c=iris.petal_length、期待される結果を入力できます

データが行または列でグループ化され、データポイントがデータフレームの列に従って色付けされるFacetGridを作成する方法はありますか?

mwaskom

DataFrameで列として識別される変数は、プロット関数の位置引数に対応している必要があります。最も簡単な方法は次の代わりにplt.scatter署名を作成する小さなラッパー関数を作成するscatter(x, y, c)ことですscatter(x, y, s, c)

import seaborn as sns
import matplotlib.pyplot as plt

sns.set(style='white')

iris = sns.load_dataset('iris')
g = sns.FacetGrid(iris, row='species', size=4)

def scatter(x, y, c, **kwargs):
    plt.scatter(x, y, c=c, **kwargs)

g.map(scatter, 'sepal_width', 'sepal_length', 'petal_length')

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

Related 関連記事

ホットタグ

アーカイブ