python做图笔记

1. 工具选择

  了解了基本python,rodeo,anaconda套件这三种工具。

  (1)基本python,下载安装python的最新版(目前是python3.7).注意要使用安装版。安装好后,一般系统路径会加入python的安装目录和其下的scripts。scripts里包含pip。

        安装完成后,可以在cmd命令行里键入python进入python界面,也可以打开自带的python界面。在这里面就可以进行python代码编写和运行了。

        如果要安装包,需要打开cmd命令行,使用pip install packet_name 进行在线安装。或者将包下载下来,一般是whl格式,使用pip install "D:\doloads\packet"进行安装。

        我们这里安装numpy、scipy、matplotlib、pandas。

        然后就可以进行做图了。使用plt.show()后会弹出一个新界面展示图形,上面有保存按钮,可以将其保存为各种格式。

  (2)rodeo安装后自带python以及matplotlib等基本包。但是在里面安装其他包不是很好使。而且对于matplotlib的有些特性不支持,比如 plt.rcParams 。绘图只能在软件内部一个框里显示,保存操作只能保存为png,要保存为pdf需要使用命令。

  (3)anaconda安装后有一整套工具,而且包含了较新版本的python,比如目前包含python3.6,以及丰富的包。安装后的工具有anaconda promt命令行,spyder等,主要使用这两个。anaconda promt命令行用来进行包的安装的管理,使用conda list可以列出所有已经安装的包及其版本。spyder用来作为ide,可以设置在弹出框里显示绘图,弹出框按钮类似与基本python的弹出框。

 

2. 最终选择anaconda,使用spyder进行编辑。遇到了一个问题就是,画柱形图使用hatch填充,不设置颜色(使用默认的颜色序列)或设置彩色序列,保存为pdf时,使用sumatrapdf,minipdf等工具打开不显示填充内容,只显示整个颜色快。

      后来通过各种debug发现, 如果画bar时,设置颜色为黑白,edgecolor='black',color='lightgray', 就很正常。发现这里设置color='red'也会正常。

      再次发现,只要在for循环中使用  for i, bar_height in zip(range(0,5),dlist):# enumerate(dlist) ,在bar设置了颜色就不行

      而for循环使用  for bar_height in dlist: 就可以

      于是,for循环里不设置i,而使用colors.pop(0)设置颜色。 这下好了!

 

    貌似bar里面的  edgecolor='black' 参数也有关系

      

3. 中文支持 参考 https://segmentfault.com/a/1190000005144275

import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签
plt.rcParams['axes.unicode_minus']=False #用来正常显示负号
即可

posted on 2018-07-16 11:44  longbigfish  阅读(221)  评论(0编辑  收藏  举报

导航