当我写这个程序的时候,我先用matlab,然后用gnuoctave,但是他们做不到。所以我用python写了自己的脚本:
from pylab import *
f, ax = plt.subplots(1)
xdata = [256, 512, 1024, 2048]
labels = [256, 512, 1024, 2048]
ydata = [1, 1, 30, 150]
plt.xscale('log', basex=2)
plt.yscale('log', basey=2)
ax.scatter(xdata, ydata)
y2data = [1, 1, 30, 150]
ax.scatter(xdata, y2data, marker='x')
x3data = [256, 512]
y3data = [29, 140]
ax.scatter(x3data, y3data, marker='d')
plt.xticks(xdata, labels, rotation='vertical')
f.suptitle('Benchmark results', fontsize=20)
plt.xlabel('memory (bytes)', fontsize=18)
plt.ylabel('time (seconds)', fontsize=16)
plt.show(f)
图形看起来不错(但我不得不调整它的大小,使底部的文本出现)。你知道吗
对于垂直指数/对数轴,我想用十进制表示法来写,就像水平轴一样。能做到吗?你知道吗
而不是“2²”,我希望它只是说4个明白。你知道吗
为什么不做你对水平轴做的同样的事情呢?手动创建标签列表,然后使用plt.yticks公司,并用整数代替2的幂。你知道吗
相关问题 更多 >
编程相关推荐