假设我有一定数量的数据集想要一起绘制。
然后我想放大某个部分(例如,使用ax.set_xlim、 或plt.xlim或plt.axis)。当我这样做时,它仍然保留缩放之前的计算范围。我怎样才能让它重新缩放到当前显示的内容?
例如,使用
import matplotlib
import matplotlib.pyplot as plt
import matplotlib.gridspec as gridspec
data_x = [d for d in range(100)]
data_y = [2*d for d in range(100)]
data_y2 = [(d-50)*(d-50) for d in range(100)]
fig = plt.figure(constrained_layout=True)
gs = gridspec.GridSpec(2, 1, figure=fig)
ax1 = fig.add_subplot(gs[0, 0])
ax1.grid()
ax1.set_xlabel('x')
ax1.set_ylabel('y')
ax1.scatter(data_x, data_y, s=0.5)
ax1.scatter(data_x, data_y2, s=0.5)
ax2 = fig.add_subplot(gs[1, 0])
ax2.grid()
ax2.set_xlabel('x')
ax2.set_ylabel('y')
ax2.scatter(data_x, data_y, s=0.5)
ax2.scatter(data_x, data_y2, s=0.5)
ax2.set_xlim(35,45)
fig.savefig('scaling.png', dpi=300)
plt.close(fig)
Run Code Online (Sandbox Code Playgroud)
哪个生成 …
我读过有关该主题的几个问题:
我知道在宏上通常首选#define枚举,以获得更好的封装和/或可读性。另外,它允许编译器检查类型以防止出现某些错误。
const声明介于两者之间,允许类型检查和封装,但更混乱。
现在我在内存空间非常有限的嵌入式应用程序中工作(我们经常必须争取字节节省)。我的第一个想法是常量比枚举占用更多的内存。但我意识到我不确定常数将如何出现在最终固件中。
例子:
enum { standby, starting, active, stoping } state;
Run Code Online (Sandbox Code Playgroud)
在资源有限的环境中,enumVS#define与 VSstatic const在执行速度和内存占用方面如何比较?