相关疑难解决方法(0)

如何设置pi的倍数(Python)(matplotlib)

我想在Python中制作一个情节,并且x范围显示为pi的倍数.

有没有一个很好的方法来做到这一点,而不是手动?

我正在考虑使用matplotlib,但其他选项都很好.

编辑3:EL_DON的解决方案对我有用:

import matplotlib.ticker as tck
import matplotlib.pyplot as plt
import numpy as np

f,ax=plt.subplots(figsize=(20,10))
x=np.linspace(-10*np.pi, 10*np.pi,1000)
y=np.sin(x)

ax.plot(x/np.pi,y)

ax.xaxis.set_major_formatter(tck.FormatStrFormatter('%g $\pi$'))
ax.xaxis.set_major_locator(tck.MultipleLocator(base=1.0))

plt.style.use("ggplot")


plt.show()
Run Code Online (Sandbox Code Playgroud)

赠送:

很好的正弦图

编辑2(在编辑3中解决!):EL_DON的答案似乎不适合我:

import matplotlib.ticker as tck
import matplotlib.pyplot as plt
import numpy as np

f,ax=plt.subplots(figsize=(20,10))
x=np.linspace(-10*np.pi, 10*np.pi)
y=np.sin(x)

ax.plot(x/np.pi,y)

ax.xaxis.set_major_formatter(tck.FormatStrFormatter('%g $\pi$'))
ax.xaxis.set_major_locator(tck.MultipleLocator(base=1.0))

plt.style.use("ggplot")

plt.show()
Run Code Online (Sandbox Code Playgroud)

给我

情节

哪个看起来不对劲

python plot matplotlib axis-labels

12
推荐指数
4
解决办法
1万
查看次数

麻烦对齐matplotlib twinx轴的滴答声

我创建了一个有2个y轴的matplotlib图.y轴有不同的比例,但我希望对齐和网格对齐.我从excel文件中提取数据,因此无法预先知道最大限制.我试过以下代码.

# creates double-y axis
ax2 = ax1.twinx()

locs = ax1.yaxis.get_ticklocs()
ax2.set_yticks(locs) 
Run Code Online (Sandbox Code Playgroud)

现在的问题是ax2上的刻度不再有标签了.谁能给我一个很好的方法来对齐不同尺度的蜱?

python matplotlib

7
推荐指数
1
解决办法
4466
查看次数

matplotlib轴上的精度不同

我的老师说,在图表中我必须标记轴0, 0.25, 0.5而不是0.00,0.25,0.50,....我知道如何将它标记为0.00,0.25,0.50 (plt.yticks(np.arange(-1.5,1.5,.25))),但是,我不知道如何以不同的精度绘制ticklabels.

我试过这样做

plt.yticks(np.arange(-2,2,1))
plt.yticks(np.arange(-2.25,2.25,1))
plt.yticks(np.arange(-1.5,2.5,1))
Run Code Online (Sandbox Code Playgroud)

无济于事.

python graphics matplotlib

4
推荐指数
2
解决办法
2万
查看次数

在matplotlib中刻度轴的格式

我正在尝试使用matplotlib绘制干净的图形。这是我的代码:

fig = plt.figure(figsize = (6,6))
plt.grid(True)
plt.xlabel('time (s)',fontweight='bold')
plt.ylabel('density',fontweight='bold')
plt.plot(data1, data2, color = 'y', linewidth = 2)
plt.show()
Run Code Online (Sandbox Code Playgroud)

data2中的浮点数介于0.0001和0.001之间,所以当我执行此操作时,y轴具有类似'0.0001''0.0002'等的刻度。如何强制将刻度设为科学计数法('1e-3','1e -4'等)?谢谢 :)

python matplotlib

1
推荐指数
1
解决办法
6289
查看次数

标签 统计

matplotlib ×4

python ×4

axis-labels ×1

graphics ×1

plot ×1