【发布时间】:2021-07-10 23:58:51
【问题描述】:
我正在尝试创建一个散点图,在图表上,您可以区分两件事:
-
按颜色。例如,如果值为负,则颜色为红色,如果值为正,则颜色为蓝色。
-
按标记大小。例如,如果它在 -0.20 和 0 之间的值大小为 100,如果值在 0 和 0.1 之间,大小为 200,如果值在 0.5 和 1 之间,大小为 300 等等...
这是我正在处理的一些数据(以防万一):
0 0.15
1 0.04
2 0.02
3 0.01
4 -0.03
5 -0.07
6 -0.25
7 -0.27
8 -0.30
我尝试了以下方法:
fig = plt.figure(figsize=(15, 8))
ax = fig.add_subplot(1, 1, 1)
res = np.genfromtxt(os.path.join(folder, 'residuals.csv'), delimiter=',', names=True)
for name in res.dtype.names[1:]:
plt.scatter(res.x, res.y, s=200, c=res.residual, cmap='jet')
这很好用,但它只按颜色对我的数据进行排序。大小是一样的,我不知道哪个是负值/正值,所以这就是为什么我要寻找前面提到的这两个条件。
非常感谢任何帮助!
【问题讨论】:
标签: python pandas dataframe matplotlib scatter-plot