【发布时间】:2020-03-01 20:40:55
【问题描述】:
我正在尝试为我的数据集使用 loglog 图,但我希望我的绘图线在每组的最后一个 y 值处结束,但是 matplotlib 用一条直线将 loglog 图完成到 x 轴,请参阅here.
但我希望我的情节像this,以确切的结束值结束。
我有相同的 x 轴数组,但有 4 个不同的 y 值,所以我这样绘制图表:
plt.loglog(x,y1,x,y2,x,y3,x,y4)
我从 txt 文件创建我的 y 数组,如下所示:
with open(os.path.join(root,name),'r') as fin:
y1 = []
for q in fin:
y1.append(float(q.split(' ')[1]))
如何从 y1 数组中删除零值?
值是这样的:
1 0.535025
2 0.116237
4 0.0336809
8 0.00814949
16 0.00159025
32 0.000202602
64 1.00662e-05
128 7.68864e-08
256 0
512 0
1024 0
2048 0
4096 0
8192 0
16384 0
【问题讨论】:
-
当您的最后一点为零时会发生这种情况(不能以对数刻度显示)。只要确保不要绘制
0,那么该行将在最后一点结束。 -
我添加了创建 y 数组的方法,您能帮我删除零吗?
标签: python matplotlib