import matplotlib.pyplot as plt from matplotlib.font_manager import FontProperties # 指定支持中文的字体(Windows系统示例,黑体) chinese_font = FontProperties(fname='C:/Windows/Fonts/simhei.ttf') # 数据集名称 datasets = ["Caltech", "ImageNet", "DTD", "EuroSAT", "Aircraft", "Food", "Flowers", "Pets", "Cars", "SUN397", "UCF101", "Average"] # CLIP在每个数据集上的准确率 clip_accuracy = [86.29, 58.18, 42.32, 37.56, 17.28, 77.31, 66.14, 85.77, 55.61, 58.52, 61.46, 58.77] # GPT-CLIP在每个数据集上的准确率 gpt_clip_accuracy = [88.84, 61.46, 50.06, 37.80, 20.61, 77.65, 64.91, 86.40, 57.00, 62.00, 62.83, 60.87] # 创建折线图,调整线型和标记,以便更容易区分 plt.figure(figsize=(14, 8)) plt.plot(datasets, clip_accuracy, marker='o', linestyle='--', color='blue', linewidth=2, markersize=8, label='CLIP') plt.plot(datasets, gpt_clip_accuracy, marker='s', linestyle='-.', color='red', linewidth=2, markersize=8, label='GPT-CLIP') # 添加图例 plt.legend() # 设置图表标题和轴标签 # plt.title('不同数据集上的准确率对比') plt.title('不同数据集上的准确率对比', fontproperties=chinese_font, fontsize=20) plt.xlabel('Dataset') plt.ylabel('Accuracy') # 优化横坐标标签显示 plt.xticks(rotation=45) plt.savefig('./GTP-CLIP_ACC.jpg') # 显示图表 plt.tight_layout() plt.show()