import pandas as pd
import matplotlib.pyplot as plt
data = {
'文物编号': ['01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12', '13', '14', '16', '18', '19', '20', '21', '22', '23', '24', '25', '26', '27', '28', '29', '30', '31', '32', '33', '34', '35', '36', '37', '38', '39', '40', '41', '42', '43', '44', '45', '46', '47', '48', '49', '50', '51', '52', '53', '54', '55', '56','57','58'],
'纹饰': ['C', 'A', 'A', 'A', 'A', 'A', 'B', 'C', 'B', 'B', 'C', 'B', 'C', 'C', 'C','A', 'A', 'A', 'A', 'B', 'A', 'C', 'C', 'C', 'B', 'A', 'A', 'A', 'C', 'C', 'C', 'C', 'C', 'C', 'C', 'C', 'C', 'C','C', 'A','C', 'A', 'A', 'A', 'A', 'A', 'A', 'A', 'C', 'C', 'A', 'C','C','C','C','C'],
'类型': ['高钾', '铅钡', '高钾', '高钾', '高钾', '高钾', '高钾', '铅钡', '高钾', '高钾', '铅钡', '高钾', '高钾', '高钾', '高钾', '高钾', '铅钡', '铅钡', '高钾', '高钾', '铅钡', '铅钡', '铅钡', '铅钡', '高钾', '铅钡', '铅钡', '铅钡','铅钡', '铅钡', '铅钡', '铅钡', '铅钡', '铅钡','铅钡','铅钡','铅钡','铅钡','铅钡','铅钡','铅钡','铅钡','铅钡','铅钡','铅钡','铅钡','铅钡','铅钡','铅钡','铅钡','铅钡','铅钡','铅钡','铅钡','铅钡','铅钡'],
'颜色': ['蓝绿', '浅蓝', '蓝绿', '蓝绿', '蓝绿', '蓝绿', '蓝绿', '紫', '蓝绿', '蓝绿', '浅蓝', '蓝绿', '浅绿', '深绿', '浅蓝', '深蓝', 'X','浅蓝', '蓝绿', '蓝绿', '蓝绿', '紫', '浅蓝', '紫', '蓝绿', '浅蓝', '浅蓝', '深蓝', '紫', '浅绿', '深绿', '深绿', '浅绿', '深绿', '深绿', '深绿', '深绿', 'X', '浅绿', '浅蓝', '浅蓝', '浅蓝', '浅蓝', '浅蓝', '浅蓝', 'X', '黑', '黑', '浅蓝','浅蓝','浅蓝','浅蓝','绿','蓝绿','蓝绿','X'],
'表面风化': ['无风化', '风化', '无风化', '无风化', '无风化', '无风化', '风化', '风化', '风化', '风化', '风化', '风化', '无风化', '无风化', '无风化','无风化', '风化', '无风化', '无风化', '风化', '风化', '无风化', '风化', '风化', '风化', '风化', '风化', '无风化', '无风化', '无风化', '无风化', '风化', '无风化', '风化', '无风化', '风化', '风化', '风化', '风化', '风化', '风化', '风化', '无风化', '无风化', '无风化', '风化', '风化', '风化','风化','风化','风化','风化','无风化','风化','风化','风化']
}
df = pd.DataFrame(data)
df.replace('X', pd.NA, inplace=True)
df.dropna(subset=['颜色'], inplace=True)
type_counts = df['类型'].value_counts()
plt.rcParams['font.sans-serif'] = ['SimHei'] # 使用中文黑体字体
plt.rcParams['axes.unicode_minus'] = False # 解决负号显示问题
plt.bar(type_counts.index, type_counts.values)
plt.xlabel('玻璃类型')
plt.ylabel('数量')
plt.title('不同玻璃类型的文物数量分布')
plt.show()
pattern_counts = df['纹饰'].value_counts()
plt.bar(pattern_counts.index, pattern_counts.values)
plt.xlabel('纹饰')
plt.ylabel('数量')
plt.title('不同纹饰的文物数量分布')
plt.show()
color_counts = df['颜色'].value_counts()
plt.bar(color_counts.index, color_counts.values)
plt.xlabel('颜色')
plt.ylabel('数量')
plt.title('不同颜色的文物数量分布')
plt.show()
color_wind_counts = df.groupby(['颜色', '表面风化']).size().unstack()
color_wind_counts.plot(kind='bar', stacked=True)
plt.xlabel('颜色')
plt.ylabel('数量')
plt.title('不同颜色下的表面风化情况')
plt.legend(title='表面风化')
plt.show()
请问如何导出可视化后的图像呢?谢谢大家解答啦~
【相关推荐】
搜索‘c.NotebookApp.browser’
,在下面增加以下语句:
注:路径里面的\
必须改成\\
,否则失败!
然后重启软件即可。