是否有一种方法可以对数据框所有列(其中Y是数据框列之一)中的散点图进行网格处理?
为此,我可以在matplotlib
或seaborn
上进行for循环(请参见下面的代码),但是我无法使它们显示在网格上。
我希望将它们显示在网格可视化中,以便于比较它们。
这是我能做的:
for col in boston_df:
plt.scatter(boston_df[col], boston_df["MEDV"], c="red", label=col)
plt.ylabel("medv")
plt.legend()
plt.show()
或
for col in boston_df:
sns.regplot(x=boston_df[col], y=boston_df["MEDV"])
plt.show()
现在,如果我尝试创建一个子图,并在像这样的循环中使用ax.scatter()
fig, ax = plt.subplots(3, 5,figsize=(16,6))
for col in boston_df:
ax.scatter(boston_df[col], boston_df["MEDV"], c="red", label=col)
plt.ylabel("medv")
plt.legend()
plt.show()
它给我错误AttributeError: 'numpy.ndarray' object has no attribute 'scatter'
找到这样简单的解决方案会很不错:
df.hist(figsize=(18,10), density=True, label=df.columns)
plt.show()
答案 0 :(得分:-1)
考虑使用熊猫DataFrame.plot
和seaborn的regplot
的 ax 参数:
foreach
使用随机数据进行演示:
<?php
$facade = new NewsArticleFacade();
$news = $facade->getAll();
unset($facade);
$i = 0;
foreach($news as $new)
{
$i++;
if ($i = 5000000000000000)
{
echo "if statement: " . $i;
break;
}
$content = substr($new->getContent(), 0, 69);
echo "<div class='news'>";
echo "<h4><a href='/news/news.php?id=".$new->getNewsID()."'>".$new->getTitle()."</a></h4>";
echo "<span>by <a href='#'>".$new->getUser()->getUsername()."</a> - ".$new->getDate()->format("d-M-Y")."</span>";
echo "<p>".$content." ...</p>";
echo "<div class='gradient'></div>";
echo "<img src='img/news/0000000001.jpg'>";
echo "</div>";
}
?>