我有以下代码:
plt.plot(list1[0: x], '-', c="r", linewidth=3)
plt.plot(list1[x:], '.', c="b", linewidth=3)
plt.plot(list2, '-', c="k", linewidth=2)
plt.savefig("myfig")
plt.clf()
我想要做的是绘制list1和list2中的点作为线条,但是,在点x之前,我想以某种样式绘制列表1中的点,并且在x之后绘制不同的样式。我的代码的问题是我从0开始都有三个图,因此,x之后的行不是从x开始而是从0开始。如何修复代码?
答案 0 :(得分:2)
您可以将x坐标赋予plt.plot
以及y坐标。因此,假设它们只是list1
和list2
中项目的整数索引,您可以这样做:
x1 = range(len(list1))
x2 = range(len(list2))
plt.plot(x1[0:x], list1[0:x], '-', c="r", linewidth=3)
plt.plot(x1[x:], list1[x:], '.', c="b", linewidth=3)
plt.plot(x2, list2, '-', c="k", linewidth=2)