我有以下数据集。我想使用Python或Gnuplot来绘制数据。元组的形式为(x, y)
。Y轴应为对数轴,即log(y)
。散点图或折线图将是理想的。
如何才能做到这一点?
[(0, 6.0705199999997801e-08), (1, 2.1015700100300739e-08),
(2, 7.6280656623374823e-09), (3, 5.7348209304555086e-09),
(4, 3.6812203579604238e-09), (5, 4.1572516753310418e-09)]
6条答案
按热度按时间mpbci0fu1#
如果我没理解错的话,你可以这样做。
这样你就能给予
或者是一个线图,
EDIT-如果要为轴添加标题和标签,可以执行以下操作
这会给予你
dffbzjpn2#
在matplotlib中,它将是:
这将产生:
nr9pn0ug3#
正如其他人所回答的那样,
scatter()
或plot()
将生成您想要的图。我建议对已经在这里的答案做两个改进:1.使用numpy创建x坐标列表和y坐标列表。使用numpy处理大型数据集比使用其他答案中建议的Python迭代更快。
1.使用pyplot来应用对数标度,而不是直接对数据进行操作,除非您确实想要日志。
我还使用了
ax.set_xlim(1, 6)
和ax.set_ylim(.1, 1e6)
来使它更漂亮。我使用了matplotlib的面向对象接口。因为OO接口通过使用创建的对象的名称提供了更大的灵活性和明确的清晰性,所以它比基于状态的交互式接口更受欢迎。
zvokhttg4#
也可以使用zip
zf2sa74q5#
使用gnuplot使用gplot.py
bzzcjhmw6#
也可以用Pandas。