如何解决在同一图中绘制两条不同颜色的折线图,并且 x 和 y 轴范围是固定的 输出:
我有两个这样的列表
l1= [2,8,5,19,15,23]
l2= [3,11,14,50]
现在我想绘制折线图,其中 Y 轴的范围为 0 到 50,X 轴的范围为 0 到 50。l1 和 l2 线将具有不同的颜色。如何使用 matplotlib 或 seaborn 执行此操作?
解决方法
- 将列表加载到
pandas
数据框中。 - 重构数据框
- 通过 seaborn 进行绘图。
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
l1= [2,8,5,19,15,23]
l2= [3,11,14,50]
df = pd.DataFrame({'l1': l1,'l2': l2}).stack().reset_index(name='val').assign(level_0 = lambda x: x.level_0 * 10)
sns.set_style('whitegrid')
fg = sns.lineplot(x="level_0",y = "val",hue="level_1",data=df,ci=None,palette='Set1')
plt.savefig('test5.png')
输出:
,一个简单的解决方案是直接使用 matplotlib.pyplot
。
import matplotlib.pyplot as plt
l1= [2,50]
plt.ylim((0,50)) # set Y axis range to 0..50
plt.xlim((0,50)) # set X axis range to 0..50
plt.plot(l1,color='red') # plot l1
plt.plot(l2,color='blue') # plot l2
plt.show()
有关更多样式选项,请参阅 matplotlib.pyplot.plot()。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。