韭菜学Python(8):画得一手好图 Python画图工具很强大,不比Matlab差,画了一些图,简单总结下。 (1)解决plot函数无法引入的问题,这一问题... | 您所在的位置:网站首页 › python中pltplot › 韭菜学Python(8):画得一手好图 Python画图工具很强大,不比Matlab差,画了一些图,简单总结下。 (1)解决plot函数无法引入的问题,这一问题... |
来源:雪球App,作者: 韭圈儿,(https://xueqiu.com/8142384897/85426777) Python画图工具很强大,不比Matlab差,画了一些图,简单总结下。 (1)解决plot函数无法引入的问题,这一问题我在2.X版本中没碰到过,在3.x版本中碰到过。 报错为: ![]() 解决办法:找到font.manager.py文件,并把它的241行#隐去即可 ![]() ![]() (2)解决中文显示乱码、负数显示不出来问题 ![]() (3)画一个简单的图 第10行,引入plot函数 第23行:对df表格中的沪深300的数据进行画图 其他说明:这里使用的是沪深300,上证50等指数的市盈率数据,文件名为index_pe_20170505,存放在微信公众号“韭菜说投资社区-韭菜说-资料库”里面,可自行下载。 18-22行是我对原始数据的一个处理,说的装X一点叫“数据清洗”。。。哎哎,肉麻 ![]() ![]() (4)但是这个图啥都木有,光秃秃的。下面开始为他增加参数! ![]() 加完特效以后效果如下:(这里面为了让图看的更清楚,我用tail(100)只取了沪深300指数最后100个数据) ![]() 解释一下各个参数的含义: linestyle是线的形状,marker是每个数据点的形状。这两个参数的具体取值如下: ![]() color是颜色,取值如下: ![]() 这个链接有最全的颜色对比 网页链接 颜色和线性这两者甚至可以结合到一起:直接写: plt.plot(df['沪深300'],'bo'),代表蓝色线性,圆点。不过一开始还是建议老老实实分开弄。 颜色也可以用其他方式表示,比如 coloer='green'),就可以用'#008000',或者 RGB or RGBA ((0,1,0,1)) 表示。 linewidth是线的宽度,label是图例标签。不过要让标签显示出来,还需要27行的函数,plt.legend()来实现,同时可以在该函数内 设置标签的位置: plt.legend(loc=’best’)#loc=right center left upper right lower right best center lower left center right upper left upper center lower center 等等,图例安放位置,一般选用‘best’即可,自动帮你选择最佳位置。 为图表增加题目:plt.title() 增加网格线:plt.grid(b=True,linestyle='-',color='0.7',axis=y), b=None就是不显示网格线,axis还可以等于x或者等于both。 增加或修改横坐标或者纵坐标,plt.xlabel,plt.ylabel. 横坐标的显示角度问题:plt.xticks(rotation=45),角度为45度。 (4)如何在一个图上画两条线呢? 这很简单,就是直接在第一个plot函数后面,再加一个plot函数就行,二者就会重叠在一起。 不过这样的问题在于,每一个plot画出来的图,其实公用的一个“画布”。如果我们想画两个图,那么我们就得需要两个画布。那么就需要定义画布啦。 ![]() (5)为每一个图定义一个画布。 ![]() 24行定义了一个叫fig01的画布,figsize是画布尺寸。25行为这个画布上增加了一个1行1列第1个图。 34行定义了一个叫fig02的画布,figsize是画布尺寸。35行为这个画布上增加了一个1行1列第1个图。 这样两个图就分开了,而不是合并在了一起。 ![]() (5)如果不适用plt.plot()函数,还可以直接使用df.plot()函数直接来画图,什么图例啊,标签的都可以自动出现,而且不用单独设置画布,自己会为自己创建一个画布。效果如下: 把所有列全部显示出来: ![]() 只显示其中几列: ![]() 当然,我们也可以设置更多的参数: ![]() 比如我们画一个柱状图: ![]()
(6)我们也可以定义一个画布,在这个画布上画多个图: ![]() ![]() (7)画一些列数据及其重要的分为点,并在一张图上标注出来。 ![]() ![]() (8)设置双坐标轴 ![]() ![]() (9)画柱状图 ![]() 未完待续,还有更多的画图细节有待添加。 ![]() 最终成果应该是,你可以画出任何你想要的图,包括炒股软件上的K线图,MACD什么乱七八糟的东西。 ![]() 周末休息一下。 更多内容,和文中的数据资料,可参阅公众号“韭菜说投资社区”中的资料库。 |
CopyRight 2018-2019 实验室设备网 版权所有 |