matplotlib(二)——matplotlib控制坐标轴第一个刻度到原点距离
一、问题描述
具体问题是:
- 用python库matplotlib进行数据的图表展示;
- 横坐标是自定义统计值;
- 保存矢量图(svg),保存后发现横坐的第一个点离坐标原点距离较大,导致图形离y轴较远,让画出的图看着不舒服;
- 如果用jpg图片发现也有这个问题,但是控制台有参数可以调整,自动保存图片则需要参数控制。
二、解决办法
解决思路:
- 查一下相关坐标轴的参数。
解决办法:
- 方法1:
- 通过参数:ax.set_xlim(-1,)显示制定横坐标的范围。
- 这种方法横坐标多余的(坐标轴右边的)不会显示。
- 方法2:
- 参数ax.yaxis.set_ticks_position('left')设置向左移动
- 参数:ax.spines['left'].set_position(('data', -1))设置距离
- 这种方法是移动纵坐标的坐标轴,会显示坐标轴右边的横轴和数据。
方法1示例:
1 import pandas as pd
2 import matplotlib.pyplot as plt
3 data = pd.read_csv('statistic_char.csv',index_col=0)
4
5 fig, ax = plt.subplots()
6 #ax = plt.gca()
7 plt.plot(list(data.index),data)
8 plt.yticks(range(0,35000000,2000000))
9
10 fig.set_figwidth(15)
11 fig.tight_layout()
12 ax.set_xlim(-1,)
13 #ax.yaxis.set_ticks_position('left')
14 #ax.spines['left'].set_position(('data', 0))
15 plt.show()
方法1代码
方法2示例:
1 import pandas as pd
2 import matplotlib.pyplot as plt
3 data = pd.read_csv('statistic_char.csv',index_col=0)
4 fig, ax = plt.subplots()
5 plt.plot(list(data.index),data)
6 plt.yticks(range(0,35000000,2000000))
7 fig.set_figwidth(15)
8 fig.tight_layout()
9 ax.yaxis.set_ticks_position('left')
10 ax.spines['left'].set_position(('data', -1))
11 plt.show()
方法2代码
设置图形离 **X** 轴的距离的参数:
1 ax.xaxis.set_ticks_position('bottom')
2 ax.spines['bottom'].set_position(('data', 0))
三、相关参考
- 坐标轴相关的官方文档:
- 设置图形离 **Y** 轴的距离:
- https://matplotlib.org/api/_as_gen/matplotlib.axis.YAxis.set_ticks_position.html#matplotlib.axis.YAxis.set_ticks_position
- https://matplotlib.org/api/spines_api.html?highlight=spines#matplotlib.spines.Spine.set_position
- https://matplotlib.org/api/_as_gen/matplotlib.axes.Axes.set_xlim.html?highlight=set_xlim
matplotlib(二)——matplotlib控制坐标轴第一个刻度到原点距离的更多相关文章
- 使用matplotlib的示例:调整字体-设置刻度、坐标、colormap和colorbar等
使用matplotlib的示例:调整字体-设置刻度.坐标.colormap和colorbar等 2013-08-09 19:04 27805人阅读 评论(1) 收藏 举报 分类: Python(71 ...
- matplotlib.pyplot库函数关于坐标轴显示的支持
matplotlib.pyplot库函数关于坐标轴显示的支持 https://blog.csdn.net/Stark_595/article/details/80787005?depth_1-utm_ ...
- ECharts修改坐标轴,坐标轴字体,坐标轴网格样式以及控制坐标轴是否显示
转自:http://blog.csdn.net/kirinlau/article/details/72876689 首先要将一个图表显示在前端页面上: var myChart = echarts.in ...
- Winforn中设置ZedGraph曲线图的属性、坐标轴属性、刻度属性
场景 C#窗体应用中使用ZedGraph曲线插件绘制图表: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/99716066 在上面 ...
- 2、Arx二次开发创建第一个应用程序
一.本节课程 Arx二次开发创建第一个应用程序 二.本节要讲解的知识点 1.手动创建ARX的应用的步骤. 2.应用向导创建ARX应用程序的步骤. 三.具体内容 1.需求:创建一个Hello World ...
- 【转载】ArcBall二维控制三维旋转
原文:http://oviliazhang.diandian.com/post/2012-05-19/40027878859 由于目前大多的显示器是二维的,要控制三维物体的旋转就显得不那么直接了.Ar ...
- 二 ASP.NET MVC 第一个程序 hello world
二 ASP.NET MVC 第一个程序 hello world https://blog.csdn.net/xmroom/article/details/51335917 我使用的Visual s ...
- struts2官方 中文教程 系列十二:控制标签
介绍 struts2有一些控制语句的标签,本教程中我们将讨论如何使用 if 和iterator 标签.更多的控制标签可以参见 tags reference. 到此我们新建一个struts2 web 项 ...
- matplotlib 可视化 —— matplotlib.patches
官方帮助文档 patches - Matplotlib 1.5.1 documentation patches 下主要包含的常用图形类有: Eclipse Circle Wedge 1. plt.gc ...
随机推荐
- 非递归遍历二叉树Java版的实现代码(没写层次遍历)
直接上代码呵呵,里面有注解 package www.com.leetcode.specificProblem; import java.util.ArrayList; import java.util ...
- Ubuntu14.04 查看安装的jetty的版本
1.首先找到start.jar , Ubuntu14.04 在/usr/share/jetty 目录下, 2.然后运行 java -jar start.jar -- version 参考
- linkedlist--lecture-4
1.链表数据结构 内存利用率高:动态分配 2.链表类定义 单向链表节点 public calss ListNode { int val =0; ListNode next = null; public ...
- aop 切面配置
<bean id="userServiceImpl" class="com.bj.aop.xml.before.UserServiceImpl">& ...
- MapReduce实战:邮箱统计及多输出格式实现
紧接着上一篇博文我们学习了MapReduce得到输出格式之后,在这篇博文里,我们将通过一个实战小项目来熟悉一下MultipleOutputs(多输出)格式的用法. 项目需求: 假如这里有一份邮箱数据文 ...
- Asp.NetCore WebApi 引入Swagger
一.创建一个Asp.NetCore WebApi 项目 二.引入NuGet包 SwashBuckle.AspNetCore 三.在项目属性配置中设置 四.修改项目的启动文件Startup.cs 1). ...
- 《从0到1学习Flink》—— Flink 写入数据到 ElasticSearch
前言 前面 FLink 的文章中我们已经介绍了说 Flink 已经有很多自带的 Connector. 1.<从0到1学习Flink>-- Data Source 介绍 2.<从0到1 ...
- Docker | 第三章:Docker常用命令
前言 上一章节,简单介绍了在CentOS下的Docker的安装过程,以及运行了一个官方提供的Hello,World镜像运行了第一个Docker.就像上一章中,验证Docker是否安装成功,我们执行的是 ...
- 你还在为UiPath课程考试发愁吗?
刚开始学UiPath的时候,课程的考试难倒了很多人,有语言的原因也有对课程理解的原因,记忆中好像有一课考了5次估计,由于题库也就那么多,只要你努力考,总会过的. 学会了RPA的自动化工具,能否自动化答 ...
- [转]ubuntu16.04安装teamviewer12依赖包解决
安装teamviewer下载地址:http://www.teamviewer.com/en/download/linux/ 下载的是:teamviewer_12.0.76279_i386.deb ...