如何参数化标记' color/alpha/radius with matplotlib' s plot_date

我正在尝试用matplotlib的plot_date()创建一个时间序列图 . 我想要叠加的系列之一每个时间点有两个标量值 . 我想将这些标量中的一个映射到y轴,另一个映射到标记的某些属性,例如alpha值,颜色或大小(圆形标记的半径) . 有一些类似效果的例子,但有散点图 . 有没有一种聪明的方法来实现plot_date这样的效果?

回答(1)

2 years ago

这里没有理由使用 plot_date . 而是使用 scatter 图 . 使用 scatterc 参数生成着色 . 一个最小的例子:

import numpy as np
import datetime
import matplotlib.pyplot as plt

base = datetime.datetime.today()
x = [base - datetime.timedelta(days=x) for x in np.random.randint(0,60, size=36)]
y = np.random.rand(36)
z = np.random.rand(36)
plt.scatter(x,y, c=z)

plt.gcf().autofmt_xdate()
plt.show()

enter image description here