Rad*_*dar -1 python matplotlib
我希望彩色圆点与图表底部保持恒定距离.然而,正如您所看到的那样,它们会跳到整个地方,因为它们的y坐标以y值给出,并且y轴在每个图表中都不同.有没有办法从x轴以像素为单位定义y位置?无需借助%(图表的顶部 - 图表的底部)将是理想的.谢谢!
您可以绘制轴坐标中的点而不是数据坐标.轴坐标范围从0到1(左下角到右上角).
为了使用轴坐标,您需要提供Axes.transAxes绘图的transform参数 - 另请参阅转换教程.
这是一个最小的例子:
import matplotlib.pyplot as plt
plt.plot([1,5,9], [456,894,347], "r-",
label="plot in data coordinates")
plt.plot([0.2,0.3,0.7], [0.2,0.2,0.5], "bo",
transform=plt.gca().transAxes, label="plot in axes coordinates")
plt.legend()
plt.show()
Run Code Online (Sandbox Code Playgroud)
matplotlib.transforms.blended_transform_factory(ax.transData, ax.transAxes)
Run Code Online (Sandbox Code Playgroud)
这可以如下使用.
import matplotlib.pyplot as plt
import matplotlib.transforms as transforms
ax = plt.gca()
plt.plot([12,25,48], [456,894,347], "r-",
label="plot in data coordinates")
plt.plot([0.2,0.3,0.7], [0.2,0.2,0.5], "bo",
transform=ax.transAxes, label="plot in axes coordinates")
#blended tranformation:
trans = transforms.blended_transform_factory(ax.transData, ax.transAxes)
plt.plot([15,30,35], [0.75,0.25,0.5], "gs", markersize=12,
transform=trans, label="plot x in data-,\ny in axes-coordinates")
plt.legend()
plt.show()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
419 次 |
| 最近记录: |