当前位置: 首页 > news >正文

广州百度关键词推广沈阳百度seo关键词优化排名

广州百度关键词推广,沈阳百度seo关键词优化排名,电商运营怎么自学,wordpress媒体库图片不加载学习笔记:使用 pandas 和 Seaborn 绘制柱状图 前言 今天在使用 pandas 对数据进行处理并在 Python 中绘制可视化图表时,遇到了一些关于字体设置和 Seaborn 主题覆盖的小问题。这里将学习到的方法和注意事项做个总结,以便之后的项目中可以快…

学习笔记:使用 pandas 和 Seaborn 绘制柱状图

前言

今天在使用 pandas 对数据进行处理并在 Python 中绘制可视化图表时,遇到了一些关于字体设置和 Seaborn 主题覆盖的小问题。这里将学习到的方法和注意事项做个总结,以便之后的项目中可以快速上手和排错。


一、设置 Matplotlib 字体

在 Python 中,Matplotlib 绘图时默认使用的英文字体不支持中文,如果直接渲染中文,往往会显示成方块或乱码。为了解决这个问题,我们可以通过修改 rcParams 来设置一个支持中文的字体,例如 SimHei(黑体)或 Microsoft YaHei

下面是一段简单的函数,用于快速切换中文字体:

def set_chinese_font(font_name='SimHei'):"""设置Matplotlib的中文字体。:param font_name: 字体名称,默认使用'SimHei'。其他常见中文字体如'Microsoft YaHei'。"""import matplotlib.pyplot as pltplt.rcParams['font.sans-serif'] = [font_name]  # 设置中文字体plt.rcParams['axes.unicode_minus'] = False      # 正常显示负号

注意:如果系统中没有安装对应字体,设置可能不会生效。可以自行在系统(如 Windows 的 C:\Windows\Fonts)安装相应的字体文件。


二、Seaborn 与 Matplotlib 主题的冲突

很多时候,我们还会喜欢使用 Seaborn 自带的主题来让图表看起来更美观,例如:

import seaborn as sns
sns.set(style="whitegrid")

然而,一些版本的 Seaborn 可能会覆盖你在 Matplotlib 中设置的字体;或者你在不同地方多次调用不同的主题,也可能引发冲突。常见解决方法是要么只使用 Seaborn 的主题而不手动改字体,要么先调用 Seaborn 的主题再调用中文字体,让中文字体占最终优先级。

例如,如果你想保留白色网格风格,但又希望用黑体显示中文,可以这样写:

import seaborn as sns
sns.set(style="whitegrid")# 然后设置中文字体
set_chinese_font('SimHei')

如果两者仍然冲突,建议去掉其中一个或尝试删除 Matplotlib 缓存,让它重新扫描系统字体。


三、Seaborn barplot 的工作原理

在使用 Seaborn 绘制柱状图时,常见用法是:

import seaborn as snsbar_plot = sns.barplot(x='学院',y='人数',data=college_counts,palette='viridis'
)

不需要再手动把 bar_plot “放进” Matplotlib,因为 Seaborn 会自动在当前的 Matplotlib Figure 中生成 Axes,返回给我们的是一个已经绑定到该 Figure 的对象。因此,只要最后 plt.show()plt.savefig(),就能看到或保存这张图表。

1. 同一个坐标多个柱状(同一个 x 有多个柱子)

当我们想要在同一个 x 值下显示多个柱子(例如,同一个学院下,分别统计“参保”和“未参保”人数),可以使用 hue 参数:

bar_plot = sns.barplot(x='学院',y='人数',data=grouped_df,hue='2025年参保情况',   # 在同一个学院里区分参保和未参保palette='viridis',dodge=True,            # True:并排放置;False:重叠放置legend=True            # 是否显示图例
)
关键参数说明
  • x='学院': 横轴分组依据。每个学院在 x 轴上有一个刻度。

  • hue='2025年参保情况': 同一个学院如何再细分颜色。因为 grouped_df 里有一列 “2025年参保情况” (参保 / 未参保),Seaborn 就会在同一个 x 刻度下绘制两根柱子并用不同的颜色。

  • dodge=True: 当同一个 x 有多个柱子时,并排显示。如果改成 False,则会把这些柱子重叠绘制。
    dodge意味躲避,= true时
    在这里插入图片描述
    = false时
    在这里插入图片描述

  • legend=True: 是否显示图例。因为我们有 hue,所以图例可以帮我们标识不同颜色所对应的“参保” / “未参保”。

2. 如何得到 grouped_df

通常,我们会有一个 DataFrame 包含诸如“学院”、“2025年参保情况”、“姓名”等列。要得到分组后的每组人数,可以这样:

grouped_df = df.groupby(['学院', '2025年参保情况']).size().reset_index(name='人数')
  • groupby(['学院', '2025年参保情况']):先按“学院”和“参保情况”分组
  • .size():求出每个分组内行数,即人数
  • .reset_index(name='人数'):把分组索引转换为普通列,并将这个计数列重命名为“人数”

然后 grouped_df 就可以拿来给 Seaborn 的 barplot 使用了。


四、总结

  1. 字体设置与 Seaborn 主题冲突

    • 要么只用一方;
    • 要么先 sns.set(...),再 set_chinese_font(...)
  2. Seaborn barplot 与 Matplotlib

    • Seaborn 自动把数据绘制到当前图中,不需要显式地“放进” Matplotlib;
    • 只需 plt.show()plt.savefig() 查看或保存结果。
  3. 一个横坐标多个柱状图

    • 通过设置 hue='...' 参数,告诉 Seaborn 在同一 x 类别下再细分颜色。
    • dodge=True 为并排,不会重叠;dodge=False 则重叠显示。
  4. 分组汇总

    • 借助 groupby() + size()(或 count()sum()等)做聚合,再用 reset_index 转换成列形式,是一条非常重要的分析路径。

通过这些技巧,我们就可以轻松地使用 pandas + Seaborn 绘制各种各样的统计图表,展示数据中的分类情况、分布情况以及关系,满足日常数据分析与可视化需求。


延伸阅读

  • Seaborn 官方文档: https://seaborn.pydata.org/
  • Matplotlib 字体管理: https://matplotlib.org/stable/tutorials/text/text_props.html
  • pandas 文档: https://pandas.pydata.org/docs/

至此,今天的学习心得就整理完毕啦! 希望这篇笔记能帮你更快掌握在 Python 中处理中文显示、使用 Seaborn 绘制柱状图,以及在同一个坐标轴上并排展示多个柱子的技巧。祝你在数据可视化之路上更进一步!

http://www.yayakq.cn/news/632280/

相关文章:

  • 安徽省工程建设信息网网站网站影响seo的标签
  • 网页设计入门教学视频网络优化软件
  • 佛山做网站推广常州做网站包括哪些
  • 中色冶金建设有限公司网站泰安网上房地产
  • 深圳市深圳市住房和建设局网站首页网站地图的制作
  • 自己的电脑做网站服务器吗深圳航空公司最新官网
  • 科技服务网站建设方案沂水网站优化
  • 建设淘宝客网站技术支持 哈尔滨网站建设
  • 云南做网站价格网站建设教学廊坊
  • 为什么建设厅的网站不好打开网站建设的基本要素
  • 做淘宝客导购网站云南seo网站关键词优化软件
  • 北京建站公司哪个好网站编排
  • 郑州网站权重做游戏用什么电脑系统下载网站好
  • 在哪里做企业网站网页设计师需要学什么专业
  • 武宁网站ui专业设计我们的优势的网站
  • 纺织服装板块上市公司网站建设国外专门做视频翻译网站吗
  • 个人网站设计及实现php网页设计实例代码
  • 网站开发技术有哪些网站排名带照片怎么做
  • 中小企业网站建设平台网页程序设计软件
  • 2016网站优化网络设计案例题
  • 做外贸的在哪些网站找工作公司官网网址
  • 微网站搭建平台wordpress导航网站模板下载
  • 做网站一般多少钱涿州做网站建设
  • 石龙网站仿做做动漫姓氏头像的网站
  • 移动ui设计 网站少儿编程加盟店电话
  • vs网站搜索栏怎么做微信公众号公众平台
  • 做网站推广工作赚钱吗怎么做像表白墙的网站
  • 垂直网站 开源码网站要背代码?
  • 外卖网站怎么做drupal joomla wordpress 带后台管理
  • 网站收录不增加wordpress单机版