查看原文
其他

如何使用seaborn绘制组合图

大邓 大邓和他的Python 2022-07-09

昨天教程   股评师分析报告文本情感分析预测股价 最后绘制的图片

横坐标都是一样的,我想将价格与情感得分合并到一个图中,这样更方便查看看趋势走势是否一致性。如下图

今日主要是学习如何将共享某一坐标轴的两个图合并到一个图。

实验数据

  1. import pandas as pd

  2. import matplotlib

  3. import matplotlib.pyplot as plt

  4. import seaborn as sns



  5. Month = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'June',

  6. 'July', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']


  7. #create list for made up average temperatures

  8. Avg_Temp = [35, 45, 55, 65, 75, 85, 95, 100, 85, 65, 45, 35]


  9. #create list for made up average percipitation %

  10. Avg_Percipitation_Perc = [.90, .75, .55, .10, .35, .05, .05, .08, .20, .45, .65, .80]



  11. data = {'Month': Month,

  12. 'Avg_Temp': Avg_Temp,

  13. 'Avg_Percipitation_Perc': Avg_Percipitation_Perc}


  14. #将字典转为dataframe

  15. df = pd.DataFrame(data)

  16. df

  1. #条形图

  2. plt.title('Average Temperature by Month')

  3. sns.barplot(x='Month',

  4. y='Avg_Temp',

  5. data=df,

  6. palette='summer')

  1. plt.title('Average Percipitation Percentage by Month')

  2. sns.lineplot(x='Month',

  3. y='Avg_Percipitation_Perc',

  4. data=df,

  5. sort=False)

上面两个图横坐标都是month,我们要想办法合并到一个图中。也就是第二个图复制第一个图的横坐标系,在第一个图基础上叠加上折线图

  1. #绘制基础图层

  2. fig, ax1 = plt.subplots(figsize=(10,6))

  3. color = 'tab:green'

  4. ax1.set_title('Average Percipitation Percentage by Month', fontsize=16)

  5. ax1.set_xlabel('Month', fontsize=16)

  6. ax1.set_ylabel('Avg Temp', fontsize=16, color=color)

  7. #第一图条形图

  8. ax1 = sns.barplot(x='Month', y='Avg_Temp', data = df, palette='summer')

  9. ax1.tick_params(axis='y')


  10. #twinx共享x轴(类似的语法,如共享y轴twiny)

  11. ax2 = ax1.twinx()

  12. color = 'tab:red'

  13. #第二个图,折线图

  14. ax2.set_ylabel('Avg Percipitation %', fontsize=16, color=color)

  15. ax2 = sns.lineplot(x='Month', y='Avg_Percipitation_Perc', data = df, sort=False, color=color)

  16. ax2.tick_params(axis='y', color=color)

  17. #显示绘制结果

  18. plt.show()

现在学会了,可以复习下昨天的教程 股评师分析报告文本情感分析预测股价,想办法实现股价与情感分放到一个图中。

近期文章

精选课程 | Python数据分析实战(学术)

代码不到40行的超燃动态排序图

使用Python自动生成事件分析图谱

Loughran&McDonald金融文本情感分析库

使用分析师报告中含有的情感信息预测上市公司股价变动

日期数据操作第1期 datetime库

日期数据操作第2期 pandas库

史上最大规模1.4亿中文知识图谱开源下载

【公开视频课】Python语法快速入门

【公开视频课】ython爬虫快速入门

文本数据分析文章汇总(2016-至今)

当文本分析遇到乱码(ง'⌣')ง怎么办?

当pandas遇上数据类型问题

如何理解pandas中的transform函数

一行pandas代码生成哑变量

Python最被低估的库,用好了效率提升10倍!


课件获取方式,请在公众号后台回复关键词“20191212


觉得本文有用,请不吝点赞评论转发~谢谢支持~


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存