python - Matplotlib 将刻度位置与图像像素边界对齐
问题描述
我正在numpy
使用 生成图像,matplotlib
用于可视化我关心的区域,然后使用pillow
将它们保存为 PNG。当我绘制图像时,刻度线和标签以像素而不是像素边界为中心:
有没有办法我可以左/上证明刻度和标签?我找到了有关移动标签的信息,但没有找到刻度。
我也尝试过将轴接口与此处记录的ax.major_ticklabels.set_ha("left")
和一起使用,但无法使其正常工作。我希望处于边缘和中间,但我无法获得这种行为。ax.major_ticklabels.set_va("top")
0
1
import matplotlib.pyplot as plt
from PIL import Image
import numpy as np
image_size = (2, 2)
data = np.zeros(image_size)
data[0][0] = 255
data[1][1] = 255
plt.xticks([0, 1])
plt.yticks([0, 1])
plt.imshow(Image.fromarray(data).convert("L"))
plt.show()
解决方案
这是解决方案:
from PIL import Image
import numpy as np
import matplotlib.pyplot as plt
image_size = (2, 2)
data = np.zeros(image_size)
data[0][0] = 255
data[1][1] = 255
x= [0,.5]
y= [0,.5]
labels = (0,1)
plt.xticks(x, labels)
plt.yticks(y, labels)
plt.imshow(Image.fromarray(data).convert("L"),extent = [0, 1,0 ,1])
plt.show()
推荐阅读
- steam - 设置steam启动脚本
- mysql - 如何使用多个表作为单个 NOT IN 条件的值?
- python - Python IDLE 无法打开文件,提示“打开文件操作未能连接到打开和保存面板服务”
- r - vglm 对象的逐步回归:step4() 错误
- electron - 如何获取电子中的光标位置
- authentication - 为什么在较新版本的 Keycloak 中不允许使用身份验证流程中的脚本
- r - R gganimate - GIF 动画速度不正确?
- html-parsing - 我正在使用 lxml.html 在 HTML 文件中添加新标签,然后对其进行操作,但它似乎不起作用
- javascript - JavaScript 问题 - 有没有办法在不使用调用、应用和绑定方法的情况下将对象分配给“this”关键字?
- python-3.x - 如何检查数据框中列标题中的 Nan 值