NO.252

2020.01.05

工欲善其事,必先利其器

//

- 前言 -

◆ ◆ ◆ ◆

今天,小咖带大家利用Python的plotnine制作简单柱状图。

R语言有一个强大的绘图工具ggplot2,而plotnine则是Python中的ggplot2。今天,小咖就带大家来学习plotnine这一工具包,并以简单的柱状图入手,最终将得到如下效果图。

资料来源:西瓜财经资讯

资料来源:西瓜财经资讯

- Plotnine制作柱状图 -

◆ ◆ ◆ ◆

第一步:安装各种包

资料来源:西瓜财经资讯

安装plotnine是本文的重点。在cmd中输入pip install plotnine进行安装,如果报错则可根据报错原因从网络查询解决方案。但经过反复试验,发现报错主要源于python版本不支持plotnine的问题。因此,通过卸载spyder然后从如下网站下载最新版本spyder便可以解决。

https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/?C=M&O=D

资料来源:西瓜财经资讯

第二步:导入数据

资料来源:西瓜财经资讯

(1)首次使用Python的wind接口时,需要进行如下操作:wind客户端——量化——修复插件——修复Python接口。

(2)在导入“包”时已经导入了Windpy。

(3)语句需要以w.start() 开始,否则所有与wind相关的程序都无法运行,但只要运行一次后不用重复运行。

(4)通过wss函数,得到2020年申万行业年涨跌幅数据(经过对wind的探索,发现通过增加"error,"和“usedf=True”可以直接生成dateframe)。

第三步:数据处理

资料来源:西瓜财经资讯

(1)对数据表进行复制、拆分、删除等一系列操作。

(2)对于X轴变量为类别型的数据(本文是申万行业),在使用plotnine绘图时,系统会默认将X轴类别按照字母顺序绘制柱形。

如果单纯使用data=data.sort_values(['2020年涨跌幅'], ascending=[True])对涨跌幅数据进行排序,并不会改变X轴分类数据的类别,所以不会改变柱状图的绘制顺序。

因此,要通过如下语句控制并改变原有X轴分类数据顺讯,最终得到如下表。

data=data.sort_values(['2020年涨跌幅'], ascending=[True])

data['申万行业名称']=pd.Categorical(data['申万行业名称'],categories=data['申万行业名称'],ordered=True)

资料来源:西瓜财经资讯

第四步:图形制作

资料来源:西瓜财经资讯

(1)ggplot()。底层绘图工具,用于创建图象,传入数据来源和映射。如果在映射里面添加fill参数,可以将数据以颜色区分。

(2)geom_XX()。设定几何图层,如柱状图,散点图,直方图,折线图等等。

资料来源:网络

(3)geom_text。设置标签文本,同样需要添加映射。

(4)scale。度量调整,调整颜色、大小、形状等。

资料来源:网络

(5)Labels。标签调整。

资料来源:网络

(6)Theme。主题设定,调整图表的细节,包括图表背景颜色、网格线的间隔和颜色、中文设置、图例显示、坐标轴标签字体及角度等。注意,如果图形中有中文字符,需要加入如下语句,否则将无法显示中文。

text=element_text(family = "SimHei")

(7)coord_flip() 。加入此语句可以将纵向直方图转换为横向直方图。

注意:各图表输入信息用“+”来连接

资料来源:西瓜财经资讯

资料来源:西瓜财经资讯

资料来源:

https://blog.csdn.net/weixin_42628425/article/details/89786545

- 后言 -

◆ ◆ ◆ ◆

后续,小咖不仅将更新市场分析观点,也将不时推出利用Excel(VBA)、python等工具提升金融分析效率的小贴士,欢迎大家关注公众号,一同讨论及分享。

柱状图添加数字标签_Python之利用Plotnine作图(一)——简单柱状图相关推荐

  1. 【文本】HTML5 Canvas小项目:为坐标轴添加数字标签(带刻度线)

    我的处女作<Canvas系列教程>在我的Github上正在连载更新,希望能得到您的关注和支持,让我有更多的动力进行创作. 教程介绍.教程目录等能在README里查阅. 传送门:https: ...

  2. python 柱状图如何添加数字标签_matplotlib可视化之如何给图形添加数据标签?

    当我们获取完数据之后,一般来说数据可视化呈现的最基础图形就是:柱状图.水平条形图.折线图等等,在python的matplotlib库中分别可用bar.barh.plot函数来构建它们,再使用xtick ...

  3. python中csv文件添加数据标签_Python对csv格式文件进行数据分析

    csv格式文件数据分析 1.下载数据 1.1下载数据,处理csv格式文件的数据 安装csv模块,在网上下载或者自己写一个csv格式的文件 也可以访问官网,不过很多人下不了这些文档,我这的下载积分只要1 ...

  4. python画图添加数据标签_Python plt.bar 添加数据标签

    def plot_result(count_df): fig = plt.figure() #use a figure size of (20, 8),bar width of 0.8, 设置图片大小 ...

  5. 【数据可视化】bar函数绘制简单柱状图

    文章导览 案例需求 需求解读 代码展示 代码解读 01.需求解读 中国的四个直辖市分别为北京市.上海市.天津市和重庆市,其2017年上半年的GDP分别为12406.8亿.13908.57亿.9386. ...

  6. R语言ggplot2可视化柱状图添加数值说明并控制文本、数值字体大小、轴标签字体大小实战

    R语言ggplot2可视化柱状图添加数值说明并控制文本.数值字体大小.轴标签字体大小实战 目录

  7. python机器学习手写字体识别_Python 3 利用机器学习模型 进行手写体数字检测

    0.引言 介绍了如何生成手写体数字的数据,提取特征,借助 sklearn 机器学习模型建模,进行识别手写体数字 1-9 模型的建立和测试. 用到的几种模型: 1. LR,Logistic Regres ...

  8. matplotlib柱状图上方显示数据_Python数据可视化之matplotlib

    数据可视化能让人们更直观的传递数据所要表达的信息.Python 中有两个专用于可视化的库,matplotlib 和 seaborn ,本文将介绍matplotlib. Matplotlib:基于Pyt ...

  9. python画图添加数据标签_matplotlib可视化之如何给图形添加数据标签?

    当我们获取完数据之后,一般来说数据可视化呈现的最基础图形就是:柱状图.水平条形图.折线图等等,在python的matplotlib库中分别可用bar.barh.plot函数来构建它们,再使用xtick ...

最新文章

  1. 【android】android中activity的生命周期
  2. Touch 方法amp;属性 映射工具
  3. 存储过程—导出table数据为inser sqlt语句
  4. c语言的编译环境出错怎么办,编译是通过,连接时出错,怎么办
  5. opa847方波放大电路_电子设计竞赛教程-信号发生电路
  6. Redis积分排行榜设计与实现第二篇
  7. html表头跟随滚动,JS实现table表格固定表头且表头随横向滚动而滚动_心善_前端开发者...
  8. android 技术点记录
  9. 功能设计与交互设计的冲突和融合_邓昆
  10. 权重的计算方法,主要有两种:1.线性加权法; 2.层次分析法
  11. 数据可视化技术:python数据可视化工具库汇总(共21个)
  12. <el-descriptions>无法使用的问题
  13. Scrum立会报告+燃尽图(十月二十八日总第十九次)
  14. win10的一些用法
  15. python无法启动0xc0000022_无法正常启动0xc0000022?0xc0000022一键修复教程
  16. 【Python实训项目】pygame制作【飞机大战】
  17. 章子怡对婚姻的憧憬:一生一世!——丹比奴
  18. java.lang.NoClassDefFoundError: org/codehaus/plexus/compiler/manager/NoSuchCompilerException
  19. sharepoint摘记
  20. TSINGHUAJOKING公众号基本信息

热门文章

  1. 阿里云HBase全新发布X-Pack NoSQL数据库再上新台阶 1
  2. 卷积转换为矩阵运算中填充数的计算-GEMM
  3. 十七UML核心视图动态视图之时序图
  4. 构建虚拟主机以及访问控制
  5. Linux用户权限acl配置
  6. AutoCompleteTextView的简单用法
  7. Linux 软件管理工具之rpm、yum
  8. 横瓜执导众程序员开展大讨论关于C、JAVA及其它主流IT技术使用情况和优点缺点。...
  9. 教您怎么给移动硬盘加密
  10. Delphi数据类型及转换(附:源码)