相关疑难解决方法(0)

matplotlib轴标签格式

我遇到了轴的刻度标签格式的问题.我禁用了y_axis的偏移量:

ax1.ticklabel_format(style = 'sci', useOffset=False)
Run Code Online (Sandbox Code Playgroud)

并试图把它作为科学的格式,但我得到的是:

0.00355872
Run Code Online (Sandbox Code Playgroud)

但我期待的是:

3.55872...E-2
Run Code Online (Sandbox Code Playgroud)

或类似的.

我真正想要的是:

3.55872... (on the tick label)
x 10^2  (or something similar - on the axis label)
Run Code Online (Sandbox Code Playgroud)

我可以尝试将标签设置为静态,但最后我将有几十或几百个具有不同值的图,因此需要动态设置.

另一种方法是将y_axis偏移量作为标签,但我也不知道如何做到这一点.

python matplotlib

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

如何使用十种格式的功能进行注释?

我希望注释中的数字类似于{x}\cdot10 ^ {y},而不是现在的数字:{x} E + {y}.是否有适合的字符串格式化程序?

对我来说最理想的解决方案是使用格式字符串,例如'%.2e',但可以自动转换为十个表示的强大功能.

matplotlib number-formatting

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

matplotlib等高线图与lognorm - colorbar水平

我正在尝试使用定义的级别和日志规范制作等高线图.以下是一个例子:

import matplotlib.pyplot as plt
import numpy as np
from matplotlib.colors import LogNorm
delta = 0.025

x = y = np.arange(0, 3.01, delta)
X, Y = np.meshgrid(x, y)
Z1 = plt.mlab.bivariate_normal(X, Y, 1.0, 1.0, 0.0, 0.0)
Z2 = plt.mlab.bivariate_normal(X, Y, 1.5, 0.5, 1, 1)
Z = 10 * (Z1* Z2)

fig=plt.figure()
ax1 = fig.add_subplot(111)
lvls = np.logspace(-4,0,20)
CF = ax1.contourf(X,Y,Z,
         norm = LogNorm(),
         levels = lvls
        )
CS = ax1.contour(X,Y,Z,
         norm = LogNorm(),
         colors = 'k',
         levels = lvls
        ) …
Run Code Online (Sandbox Code Playgroud)

python numpy matplotlib contour colorbar

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