python绘制折线图(多条)

本案例展示了如何使用Python的matplotlib库绘制不同长度下训练集与测试集的F1分数对比图表,通过直观的视觉效果,清晰地展现了各长度对应的F1分数变化趋势。
# encoding=utf-8
from matplotlib import pyplot
import matplotlib.pyplot as plt

names = range(8,21)
names = [str(x) for x in list(names)]

x = range(len(names))
y_train = [0.840,0.839,0.834,0.832,0.824,0.831,0.823,0.817,0.814,0.812,0.812,0.807,0.805]
y_test  = [0.838,0.840,0.840,0.834,0.828,0.814,0.812,0.822,0.818,0.815,0.807,0.801,0.796]
#plt.plot(x, y, 'ro-')
#plt.plot(x, y1, 'bo-')
#pl.xlim(-1, 11)  # 限定横轴的范围
#pl.ylim(-1, 110)  # 限定纵轴的范围


plt.plot(x, y_train, marker='o', mec='r', mfc='w',label='uniprot90_train')
plt.plot(x, y_test, marker='*', ms=10,label='uniprot90_test')
plt.legend()  # 让图例生效
plt.xticks(x, names, rotation=1)

plt.margins(0)
plt.subplots_adjust(bottom=0.10)
plt.xlabel('the length') #X轴标签
plt.ylabel("f1") #Y轴标签
pyplot.yticks([0.750,0.800,0.850])
#plt.title("A simple plot") #标题
plt.savefig('D:\\f1.jpg',dpi = 900)

结果展示:

                                                    

<think> 我们参考了引用中的内容,用户想了解使用Python绘制折线图的方法。根据引用[1],我们知道需要使用matplotlib库,并且在绘制多条折线时使用label参数和图例。引用[2]给出了一个基本的绘制折线图的代码示例,包括创建画布、生成数据、绘制图形、显示和保存。引用[3]则展示了一个简单的折线图绘制方法,但注意其linewidth=0可能不会显示线条,这可能是错误或者特殊需求。 根据这些引用,我们将给出一个清晰的步骤和示例代码,展示如何使用Python的matplotlib库绘制折线图。 步骤: 1. 导入必要的库:matplotlib.pyplot和numpy(用于生成示例数据) 2. 准备数据:x和y的数据 3. 创建画布(可选,可以设置画布大小和dpi) 4. 绘制折线图:使用plt.plot()函数,可以设置线条样式、颜色、宽度等,并添加标签(label)以便图例使用 5. 添加图例(如果有多条线) 6. 添加标题、坐标标签等(可选) 7. 显示图形或保存图形 示例代码: 下面是一个绘制单条折线图的示例,并包含图例(尽管只有一条线,但演示如何添加图例): </think> ### Python绘制折线图的方法 在Python中,使用Matplotlib库可以轻松绘制折线图。以下是详细步骤和代码示例: #### 1. 基础折线图绘制 ```python import matplotlib.pyplot as plt # 准备数据 x = [1, 2, 3, 4, 5] # X数据 y = [2, 4, 1, 5, 3] # Y数据 # 创建图形 plt.figure(figsize=(8, 4)) # 设置图形大小 # 绘制折线图 plt.plot(x, y, marker='o', # 数据点标记形状 linestyle='-', # 线型(实线) color='blue', # 线条颜色 linewidth=2, # 线宽 label='数据序列') # 图例标签 # 添加标题和标签 plt.title('基础折线图示例', fontsize=14) plt.xlabel('X', fontsize=12) plt.ylabel('Y', fontsize=12) # 添加图例 plt.legend() # 显示图形 plt.show() ``` #### 2. 多条折线图绘制 ```python import numpy as np # 生成数据 x = np.arange(0, 10, 0.5) y1 = np.sin(x) y2 = np.cos(x) plt.figure(figsize=(10, 5)) # 绘制两条折线 plt.plot(x, y1, 'r--', label='正弦曲线', linewidth=2.5) # 红色虚线 plt.plot(x, y2, 'g-', label='余弦曲线', linewidth=2.5) # 绿色实线 # 添加网格和样式 plt.grid(True, linestyle='--', alpha=0.7) plt.title('多条折线图', fontsize=14) plt.xlabel('角度(弧度)', fontsize=12) plt.ylabel('函数值', fontsize=12) plt.legend(fontsize=11) plt.show() ``` #### 3. 关键参数说明 | 参数 | 说明 | 示例值 | |------|------|--------| | `linestyle` | 线型 | `'-'`(实线), `'--'`(虚线), `':'`(点线) | | `marker` | 数据点标记 | `'o'`(圆形), `'s'`(方形), `'^'`(三角形) | | `color` | 颜色 | `'r'`(), `'#1f77b4'`(蓝色), `'green'` | | `linewidth` | 线宽 | 数值(默认1.5) | | `alpha` | 透明度 | 0-1之间的值 | | `label` | 图例标签 | 文本字符串 | #### 4. 图形保存方法 ```python # 保存为PNG格式(支持多种格式:jpg, pdf, svg等) plt.savefig('折线图.png', dpi=300, bbox_inches='tight') ``` #### 5. 高级设置 ```python # 设置坐标范围 plt.xlim(0, 10) plt.ylim(-1.5, 1.5) # 添加注释 plt.annotate('峰值点', xy=(np.pi/2, 1), xytext=(3, 1.2), arrowprops=dict(arrowstyle='->')) # 设置刻度 plt.xticks([0, np.pi, 2*np.pi], ['0', 'π', '2π']) plt.yticks([-1, 0, 1]) # 设置样式 plt.style.use('ggplot') # 使用ggplot样式 ```
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值