import matplotlib.pyplot as plt # Data for Sina Weibo extraction results models = ['WIEM-DL', 'BiLSTM-CRF', 'BERT-CRF'] precision = [92,80,86] # Example values recall = [94,85,91] # Example values f1_score = [93,83,88] x = range(len(models)) # Plotting plt.figure(figsize=(8, 6)) plt.bar(x, precision, width=0.25, label='Precision', color='skyblue', align='center') plt.bar([p + 0.25 for p in x], recall, width=0.25, label='Recall', color='orange', align='center') plt.bar([p + 0.50 for p in x], f1_score, width=0.25, label='F1 Score', color='green', align='center') # Adding labels and title plt.xlabel('Models', fontsize=12) plt.ylabel('Percentage (%)', fontsize=12) #plt.title('Sina News Information Extraction Results', fontsize=12) plt.xticks([p + 0.25 for p in x], models, fontsize=10) plt.ylim(60, 95) plt.legend(loc='lower right', fontsize=10) # Display the plot plt.tight_layout() plt.show()