我正在为一个项目制作历史股票数据的可视化,我想强调下降的区域.例如,当股票经历大幅下跌时,我想用红色区域突出显示它.
我可以自动执行此操作,还是必须绘制矩形或其他内容?
我想在matplotlib中旋转一个Rectangle,但是当我应用转换时,矩形不再显示:
rect = mpl.patches.Rectangle((0.0120,0),0.1,1000)
t = mpl.transforms.Affine2D().rotate_deg(45)
rect.set_transform(t)
Run Code Online (Sandbox Code Playgroud)
这是一个已知的错误还是我犯了错误?
我有两套阵列定义两条曲线:(x1, y1)
和(x2, y2)
我想用多边形它们之间填充.所有阵列具有相同的长度,但x1
并x2
包含不同的值.
plt.fill_between(x, y1, y2)
要求两条曲线共享相同的x阵列.
我该怎么办fill_between(x1, y1, x2, y2)
?
例如,如果:
x1 = np.array([1.0, 2.0, 3.0, 4.0, 5.0])
并y1 = np.array([3.0, 2.0, 3.0, 2.0, 3.0])
定义第一条曲线
和
x2 = np.array([1.5, 2.5 ,3.5 ,4.5 , 5.5])
并y2 = np.array([5.0, 6.0, 7.0, 8.0, 9.0])
定义第二个.
如何在曲线之间填充颜色(x1, y1)
并(x2, y2)
使用四个多边形(左边界和右边界不必垂直)?
为了澄清,四个多边形(A,B,C,D)将具有坐标:
A: [(1.0, 3.0), (1.5, 5.0), (2.5, 6.0), (2.0, 2.0)]
B: [(2.0, 2.0), (2.5, 6.0), (3.5, 7.0), …
Run Code Online (Sandbox Code Playgroud) 给出一个像
import matplotlib
import matplotlib.pyplot as plt
import numpy as np
t = np.arange(0.0, 2.0, 0.01)
s = 1 + np.sin(2 * np.pi * t)
fig, ax = plt.subplots()
ax.plot(s)
ax.set(xlabel='time (s)', ylabel='voltage (mV)', title='sine')
ax.grid()
plt.show()
Run Code Online (Sandbox Code Playgroud)
如何自动为图表的 y 值在(例如)1.25 和 0.75 之间的图表的垂直切片(从下到上)着色?
正弦只是这里的一个样本,图的实际值不太规则。
我在 matplotlib 的两条垂直线之间看到了FIll,它看起来类似于这个问题,但那里的答案在固定 x 值之间遮蔽了一个区域。我希望阴影区域由 y 值确定。