我试图将世界各国的人均GDP与各国的新冠肺炎死亡总数进行比较。每次我尝试将其转换为散点图时,它都会显示与使用plt.plot()
命令显示的图相同的图。这是我的密码:
import pandas as pd
from matplotlib import pyplot as plt
plt.style.use('seaborn-whitegrid')
data = pd.read_csv(r'/Users/john.smith/covid-data.csv')
gdp = data["gdp_per_capita"]
deaths = data["total_deaths"]
plt.scatter(gdp, deaths)
plt.title('GDP-per-Capita Compared to COVID-19 Death Total')
plt.xlabel('GDP-per-Capita')
plt.ylabel('Confirmed Deaths')
plt.tight_layout()
plt.show()
运行此代码时,生成以下图形。这显然不是我想要得到的散点图,值得注意的是,当我使用plt.scatter()
命令时,唯一的变化是图上的点变得非常大
我在一个完全不同的文件上运行了整个Matplotlib模块的测试。当我使用普通变量而不从CSV文件导入时,如下所示:
x = [7, 3, 8, 3]
y = [1, 5, 7, 4]
plt.scatter(x, y)
然后,代码工作得非常好,并生成散点图。我已经在网上挖掘了几个小时,试图找到一个解决方案,并尝试使用其他方法导入CSV或创建散点图,但没有任何效果。谢谢你的建议
以上评论中的G. Anderson提供了答案
事实证明,我只是没有使用
xlim()
和ylim()
命令的经验,所以散点图中的各个点在垂直线上重叠得非常紧密。发生这种情况的原因很简单,因为原始视图窗口对于如此大的数据集来说太宽了我做了一些轻微的额外研究,试图将两个图放在一个图形上,其中一个被放大,代码如下:
这产生了一些我可以使用的好图:
我将研究使这两个情节更具可读性的方法
相关问题 更多 >
编程相关推荐