我是matplotlib的新手,我想知道我是否可以重复y轴刻度 沿线图的网格线的值。
图表有2轴, x轴具有每小时值,y轴具有温度值。
我需要将图表显示48小时,因此会生成一个较长的水平图。当用户水平滚动图表时,他有x轴刻度可供参考但是 y轴刻度朝左,不可见。
我需要一种方法来重复所有图形的y轴刻度(温度值)。有没有办法实现这个目标?
除了重复这些值之外,还有更好的解决方案吗?
答案 0 :(得分:1)
您可以查看this example中的颜色栏:
import matplotlib.pyplot as plt
import numpy as np
from matplotlib.collections import EllipseCollection
x = np.arange(10)
y = np.arange(15)
X, Y = np.meshgrid(x, y)
XY = np.hstack((X.ravel()[:,np.newaxis], Y.ravel()[:,np.newaxis]))
ww = X/10.0
hh = Y/15.0
aa = X*9
ax = plt.subplot(1,1,1)
ec = EllipseCollection(
ww,
hh,
aa,
units='x',
offsets=XY,
transOffset=ax.transData)
ec.set_array((X+Y).ravel())
ax.add_collection(ec)
ax.autoscale_view()
ax.set_xlabel('X')
ax.set_ylabel('y')
cbar = plt.colorbar(ec)
cbar.set_label('X+Y')
plt.show()
快速实验告诉我,您可以平移/缩放主窗口,并且颜色条将保持不变。