【发布时间】:2014-11-06 04:38:18
【问题描述】:
我需要对数刻度 x 轴。这是我的代码:
plt.bar(critical_pressures_reversed, mercury_volume_scaled, bottom = 0, log = True, linewidth=0, align="center",width=.1)
plt.title("Mercury intrusion", fontsize=20)
plt.xlabel("Critical Pressure $P_c \, [kPa]$", fontsize=16)
plt.ylabel("Mercury volume $V_m \, [\mu m^3]$", fontsize=16)
plt.grid(b=True, which='major', color='black', linestyle='-', linewidth=1)
plt.grid(b=True, which='minor', color='gray', linestyle='-', linewidth=0.15)
frame = plt.gca()
figure = plt.gcf()
frame.set_xscale('log')
frame.set_axisbelow(True)
figure.set_size_inches(12, 6)
plt.savefig("intrusion_6n_press.png", dpi=300, bbox_inches='tight')
plt.close()
结果图:
如何强制 pyplot 绘制等宽的条?
我正在使用 matplotlib (1.4.2)
【问题讨论】:
-
它看起来不像条形图是此处使用的正确图表类型。为什么使用条形图而不是散点图?
-
当您比较体积和压力时,我假设您有几个数据点,正如@will 所建议的,需要使用 scatter 或使用
plt.plot函数绘制。除非您需要查看其中一个变量的分布,即压力或体积,否则您不需要plt.bar而需要plt.histogram -
@MarcinBurz 这可能会有所帮助。 CHECK THIS LINK
-
@MarcinBurz 条形函数接受数组格式的条形宽度。使用 numpy.logspace 函数创建一个宽度数组。
标签: python matplotlib