Вдохновленный примерами на этой странице, я хотел бы сделать морскую грань с набором данных Iris с 6 гранями: 3 вида x 2 типа (лепесток или сепал). В каждом аспекте мне нужна гистограмма длины (или ширины).
Но код, который я пытался, дает значение ValueError: color kwarg must have one color per dataset
.
Любые предложения, как это решить?
import pandas as pd
import matplotlib.pyplot as ply
import seaborn as sns
iris = sns.load_dataset('iris')
iris_petal = pd.DataFrame(iris.iloc[:,-3:].values, columns=['length', 'width', 'species'])
iris_petal['type'] = 'petal'
iris_sepal = pd.DataFrame(iris.iloc[:,[0, 1, -1]].values, columns=['length', 'width', 'species'])
iris_sepal['type'] = 'sepal'
iris = pd.concat([iris_sepal, iris_petal])
iris.sample(n=10)
g = sns.FacetGrid(iris, col="species", row="type")
g = g.map(plt.hist, "length", color = 'b')
Как упоминал @ImportanceOfBeingErnest, это была проблема с типом данных.
color = 'b'
из кода (с этой строкой ошибка имеет смысл, верно?).object
. Я не знаю, почему это так, но если вы исправите это, оно должно работать.