matplotlib一个画板上多个图叠加,如何决定图层上下?

  统计/机器学习 数据可视化 Python    浏览次数:22669        分享
1

比如我要在一个画板上叠加三个图,如下

import matplotlib.pyplot as plt
# 第一个图
plt.plot(x, y1)
# 第二个图
plt.scatter(x, y2)
# 第三个图
plt.plot(x, y3, 'r--')
plt.show()

怎么调整才能使得第一个图在最上层,第二图在中间,第三个图在最下层?

 

信春哥   2018-10-26 10:13



   1个回答 
6

plt里很多function都有zorder这个属性,类似于css里的z-index,zorder大的图像在上层,zorder小的图像在下层(有可能被遮盖)

你上面的要求,用zorder就表示为如下的代码

# 第一个图
plt.plot(x, y1, zorder=30)
# 第二个图
plt.scatter(x, y2, zorder=20)
# 第三个图
plt.plot(x, y3, 'r--', zorder=10)
SofaSofa数据科学社区DS面试题库 DS面经

jkm_pku   2018-10-26 11:07



  相关讨论

%matplotlib inline什么意思?

国内有没有比较好用的数据采集平台?

matplotlib怎样让grid网格线处于图像下层?

plt.scatter出现AttributeError: Unknown property markersize

plt.subplots作图效果很奇怪,出问题

plt.scatter中c参数和cmap参数的区别是什么?

python里怎么实现柱状图?

python中怎么用matplotlib在一行里生成多个图?

python画散点图

matplotlib.pyplot画图怎么添加横轴,纵轴的名字?

  随便看看

怎么在jupyter notebook里查看python的版本?

pandas.DataFrame选取最后k行

yolo v4和yolo v3的主要区别是什么?

神经网络中的dense和sparse是什么意思?

Pandas怎样对dataframe中的一个时间列进行排序?