我正在尝试绘制一个对数 - 对数图,该图显示沿着图的底部和左侧看到的所有刻度线上的对数间隔网格线.我已经能够通过使用显示一些网格线matplotlib.pyplot.grid(True)
,但这只是以10个间隔的功率显示网格线.举个例子,这是我目前得到的:
我真的很喜欢网格线看起来更像这样的东西,网格线并非都是均匀间隔的:
我将如何在Matplotlib中实现这一目标?
Jus*_*eel 37
基本上,您只需要which="both"
在grid命令中输入参数,使其变为:
matplotlib.pyplot.grid(True, which="both")
Run Code Online (Sandbox Code Playgroud)
其他选项是"次要"和"主要",它们是主要的刻度(在图中显示)和您缺少的次要刻度.如果你想要实线,那么你也可以ls="-"
用作参数grid()
.
以下是踢的示例:
import numpy as np
from matplotlib import pyplot as plt
x = np.arange(0,100,.5)
y = 2*x**3
plt.loglog(x,y)
plt.grid(True,which="both",ls="-")
plt.show()
Run Code Online (Sandbox Code Playgroud)
产生:
正如@Bryce所说,在我的机器中正确的kwarg是majorminor
。我认为颜色较浅的实线可能比虚线更好。
plt.grid(True,which="majorminor",ls="-", color='0.65')
Run Code Online (Sandbox Code Playgroud)
为我工作。
归档时间: |
|
查看次数: |
33622 次 |
最近记录: |