pyplot绘制论文折线图

Matplotlib是Python中最著名的绘图库。这里就是用matplotlib.pyplot来绘制论文实验部分所需的折线图。

画出来的折线图:

在这里插入图片描述

所涉及到的要素有:

  • 一个figure包含两个子图,用subplot实现
  • 图片直接生成展示或者保存成pdf格式,用plt.show()或者pdf.savefig()
  • 折线图的画法,点、线形状、颜色,参考Matplotlib 点、线形状及颜色
  • 图的标题,图的坐标轴刻度,x、y轴标签
  • 图的标注,用plt.legend()

具体代码如下:

import matplotlib.pyplot as plt
from matplotlib.backends.backend_pdf import PdfPages
#下面两句代码防止中文显示成方块
from pylab import mpl
mpl.rcParams['font.sans-serif'] = ['SimHei']

plt.rcParams['figure.dpi'] = 300 #图片像素
plt.rcParams['figure.figsize'] = (12.0, 4.0)

x_bits = [12, 24, 32, 48]
def joint_early():

    with PdfPages('joint_early.pdf') as pdf:
        #cifar10-----------------------------------
        plt.subplot(1,2, 1) #cifar部分画在子图1中
        y_early_students=[[0.741551,0.76498,0.77793,0.77558],
                          [0.79482,0.818521,0.82154
### 使用Python绘制高质量论文折线图 为了满足学术研究中对高质量图表的需求,可以利用 `Matplotlib` 和其他高级库(如 `Seaborn` 或 `Plotly`)。以下是详细的说明以及实现方法。 #### 高质量折线图的关键要素 高质量的折线图通常具有以下几个特点: - 清晰可读的字体大小。 - 合适的颜色搭配以区分不同数据系列。 - 足够粗细的线条以便于观察趋势。 - 图表标题、坐标轴标签和刻度清晰标注。 - 如果有误差范围,则需显示误差棒[^4]。 #### 实现代码示例 以下是一个基于 `Matplotlib` 的高质量折线图绘制实例: ```python import numpy as np import matplotlib.pyplot as plt # 设置全局样式参数 plt.style.use('seaborn-whitegrid') plt.rcParams['font.size'] = 12 plt.rcParams['axes.labelsize'] = 14 plt.rcParams['xtick.labelsize'] = 12 plt.rcParams['ytick.labelsize'] = 12 plt.rcParams['legend.fontsize'] = 12 # 示例数据 x = np.linspace(0, 10, 100) y1 = np.sin(x) y2 = np.cos(x) # 创建图表对象 fig, ax = plt.subplots(figsize=(8, 6)) # 绘制折线图 ax.plot(x, y1, label='Sine Wave', color='#FF7F50', linewidth=2.5) # 自定义颜色和线宽 ax.plot(x, y2, label='Cosine Wave', linestyle='--', color='blue', linewidth=2.5) # 添加误差棒 (假设存在一些随机噪声) error_y1 = 0.1 * np.random.rand(len(y1)) ax.errorbar(x[::10], y1[::10], yerr=error_y1[::10], fmt='o', capsize=5, color='black') # 设置标题和标签 ax.set_title('High-Quality Line Chart Example', fontsize=16) ax.set_xlabel('X-axis Label', fontsize=14) ax.set_ylabel('Y-axis Label', fontsize=14) # 添加网格并设置背景透明度 ax.grid(True, alpha=0.5) # 显示图例 ax.legend(loc='upper right') # 导出高分辨率图像文件 plt.savefig('high_quality_line_chart.png', dpi=300, bbox_inches='tight') # 展示图表 plt.show() ``` 上述代码通过调整字体大小、线条宽度、颜色方案等方式提升了图表的质量。同时引入了误差棒来表示不确定性。 #### 结合 Seaborn 提升美观程度 如果希望进一步简化绘图过程或者增强视觉效果,可以选择使用 `Seaborn` 库作为补充工具。例如: ```python import seaborn as sns sns.set_theme(style="whitegrid", palette="deep") # 加载内置数据集 data = sns.load_dataset("tips") # 绘制带有置信区间的折线图 sns.lineplot(data=data, x="size", y="tip", err_style="bars", ci=95) # 修改默认主题中的细节 plt.title('Tips vs Size with Confidence Interval', fontsize=16) plt.xlabel('Group Size', fontsize=14) plt.ylabel('Tip Amount ($)', fontsize=14) plt.show() ``` 此段代码展示了如何借助 `Seaborn` 自动生成带置信区间的效果图,并自动优化配色风格[^3]。 --- ### 总结 无论是基础版还是进阶需求,都可以依赖 `Matplotlib` 来完成大部分任务;而当追求更简洁优雅的设计时,不妨尝试集成 `Seaborn` 这样的高层次封装接口[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值