- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我的问题基本上与 this one 相同但是对于 matplotlib。我确定它与轴或子图有关,但我不认为我完全理解这些范例(更全面的解释会很好)。
当我循环进行一组比较时,我希望将每个新图的基本 y 值设置为略低于前一个,以获得如下结果:
另一个(潜在的)问题是我在循环中生成这些图,所以我不一定知道一开始会有多少图。我认为这是我对子图/轴挂断的事情之一,因为看起来你需要提前设置它们。
任何想法将不胜感激。
编辑:我认为我取得了一点进步:
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
x = np.random.random(100)
y = np.random.random(100)
fig = plt.figure()
ax = fig.add_axes([1,1,1,1])
ax2 = fig.add_axes([1.02,.9,1,1])
ax.plot(x, color='red')
ax.fill_between([i for i in range(len(x))], 0, x, color='red', alpha=0.5)
ax2.plot(y, color='green')
ax2.fill_between([i for i in range(len(y))], 0, y, color='green', alpha=0.5)
这接近我想要的......
最佳答案
这是您想要的吗?
我所做的是定义每条曲线基线之间的 y 距离。对于第 i 条曲线,我计算了最小 Y 值,然后将该最小值设置为 i 乘以 y 距离,相应地调整整条曲线的高度。我使用递减的 z 顺序来确保曲线的填充部分不会被基线遮挡。
代码如下:
import numpy as np
import matplotlib.pyplot as plt
delta_Y = .5
zorder = 0
for i, Y in enumerate(data):
baseline = min(Y)
#change needed for minimum of Y to be delta_Y above previous curve
y_change = delta_Y * i - baseline
Y = Y + y_change
plt.fill_between(np.linspace(0, 1000, 1000), Y, np.ones(1000) * delta_Y * i, zorder = zorder)
zorder -= 1
生成虚拟数据的代码:
def gauss(X):
return np.exp(-X**2 / 2.0)
#create data
X = np.linspace(-10, 10, 100)
data = []
for i in xrange(10):
arr = np.zeros(1000)
arr[i * 100: i * 100 + 100] = gauss(X)
data.append(arr)
data.reverse()
关于python - 像 FACS 一样绘制交错的直方图/线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31835547/
关闭。此题需要details or clarity 。目前不接受答案。 想要改进这个问题吗?通过 editing this post 添加详细信息并澄清问题. 已关闭 5 年前。 Improve th
我正在尝试模拟类似于 this 的面部表情 我已经理解 FACS - Action 单元,即为特定表达式移动的单元。 但我不知道如何移动/变形 Action 单元来模拟 Matlab/OpenCV/O
我的问题基本上与 this one 相同但是对于 matplotlib。我确定它与轴或子图有关,但我不认为我完全理解这些范例(更全面的解释会很好)。 当我循环进行一组比较时,我希望将每个新图的基本 y
好吧,这超出了我的范围:我一定度过了漫长的一天。当数字以两个 0 结尾时,为什么 (13!mod 10) 结果是 4?? 试试这个: 结果为 4。预期为 0。 我一定是忘记了一些非常明显的事情...
我正在维护一个使用 VS6.0 构建的遗留应用程序,但现在它已移至 VS2005,在编译过程中它会创建大量 .COD 文件,我发现这个“程序集、机器代码和源代码 (/FAcs)”编译器switch 对
我是一名优秀的程序员,十分优秀!