线图上的水平标记线

时间:2013-03-21 12:54:18

标签: matplotlib

我有两个相同功能的表示。一个显示它是电压的函数,另一个显示为深度的函数(单调但复杂的功能)。深度可以表示为电压的函数。我想在深度表示中添加类似电压轴的东西,但这似乎不可能。

如何在深度图上以-0.5,-1.0,-1.5,...等电压的增量添加垂直线?

1 个答案:

答案 0 :(得分:0)

我发现确实可以在顶部创建自定义第二轴。结果如下所示:https://dl.dropbox.com/u/226980/solved.jpg

这可以使用FixedLocator

整个代码如下所示:

f = subplot(111)
p1 = plot(depth_samples,NtNdbulk, label = "relative concentration")
xlabel("depth [um]")
ylabel("N_trap/N_bulk")

twinx()
p2 = plot(depth_samples,Nt, color='r', label = "absolute concentration")   

p = p1 + p2
ylabel("N_trap")

labs = [l.get_label() for l in p]
legend(p, labs, loc=0)

ax2 = twiny()
p1 = plot(depth_samples,NtNdbulk, alpha = 0) #invisible

l = matplotlib.ticker.FixedLocator(tick_depth*1e4) # Positions of the ticks
ax2.get_xaxis().set_major_locator(l)
ax2.get_xaxis().set_ticklabels(ticks) # Voltages as displayed
xlabel("DLTS voltage during pulse")

show()