这是related question的扩展。
我打算绘制一个带有标记轮廓的轮廓图,然后将轴比例更改为“ log”。
这很好,除了没有调整轮廓标签的旋转。这个可以解决吗?
loglog = False
import matplotlib.pyplot as plt
import numpy as np
x = (np.linspace(0, 10))
y = (np.linspace(0, 10))
X, Y = np.meshgrid(x, y)
C = plt.contour(X, Y, np.sqrt(X) * Y)
plt.clabel(C, inline=1, fontsize=10)
plt.xlim(1, 10)
plt.ylim(1, 10)
if loglog: plt.xscale('log')
if loglog: plt.yscale('log')
plt.show()
在第二个loglog=False
中用loglog=True
获得第一张图:
答案 0 :(得分:0)
因此答案实际上是显而易见的。当然,预先更改轴的比例类型会有所帮助。
编辑: 我认为在这里使用logspace而不是linspace是有意义的。
import matplotlib.pyplot as plt
import numpy as np
x = np.logspace(0, 1, 100, base=10)
y = np.logspace(0, 1, 100, base=10)
X, Y = np.meshgrid(x, y)
plt.xlim(1, 10)
plt.ylim(1, 10)
plt.xscale('log')
plt.yscale('log')
C = plt.contour(X, Y, np.sqrt(X) * Y)
plt.clabel(C, inline=1, fontsize=10)