【发布时间】:2021-09-04 16:54:39
【问题描述】:
我正在 Jupyter Notebook (Python 3.8) 中实现一个 seaborn (Version 0.11.1) catplot。
生成的dataframe由以下代码生成
city_lit_rate_long=city_lit_rate[{'Male Literacy','Female Literacy',
'National Average','City'}].melt(
['City'],var_name='Legend',value_name='Literacy Levels')
样本输出为
City,Legend,Literacy Levels
Ambala ,Male Literacy,91.58
Ambala ,National Average,85.13146044624753
Ambala ,Female Literacy,84.51
Ambikapur ,Female Literacy,83.29
Ambikapur ,Male Literacy,92.73
Ambikapur ,National Average,85.13146044624753
Basirhat ,Male Literacy,91.54
Basirhat ,Female Literacy,84.88
Basirhat ,National Average,85.13146044624753
Erode ,Male Literacy,93.18
Erode ,Female Literacy,83.65
Erode ,National Average,85.13146044624753
Hosur ,National Average,85.13146044624753
Hosur ,Male Literacy,91.57
Hosur ,Female Literacy,84.79
Kamarhati ,Female Literacy,85.43
Kamarhati ,Male Literacy,90.79
Kamarhati ,National Average,85.13146044624753
Kancheepuram ,Male Literacy,93.14
Kancheepuram ,National Average,85.13146044624753
Kancheepuram ,Female Literacy,83.59
Nadiad ,National Average,85.13146044624753
Nadiad ,Male Literacy,93.0
Nadiad ,Female Literacy,83.31
Osmanabad ,Female Literacy,82.52
Osmanabad ,Male Literacy,93.45
Osmanabad ,National Average,85.13146044624753
Ranchi ,Male Literacy,92.87
Ranchi ,Female Literacy,83.75
Ranchi ,National Average,85.13146044624753
Rewari ,Male Literacy,94.22
Rewari ,Female Literacy,81.61
Rewari ,National Average,85.13146044624753
Tiruvottiyur ,Male Literacy,91.59
Tiruvottiyur ,National Average,85.13146044624753
Tiruvottiyur ,Female Literacy,84.8
此后我使用以下代码绘制 Seaborn Catplot
plot=sns.catplot(data=city_lit_rate_long,y='City',
x='Literacy Levels', hue='Legend',
height=5,aspect=2,legend=True, legend_out=False)
产生的
只有 563 个城市,代码的第一部分在大约 1.2 毫秒内完成。但第二部分绘制猫图需要 12 分钟!
我使用的是配备 12 GB RAM 的 AMD Ryzen 7 3750H 笔记本电脑。在执行此代码期间,CPU 的负载约为 21-23%。
有没有办法加快速度?
【问题讨论】:
-
@JohanC 我更新了 seaborn 并尝试了。没有改善
标签: python-3.x jupyter-notebook seaborn catplot