python画图x轴更改间隔_Python:如何使用matplotlib.pyplot将x轴间隔更改为显示12个月?...

为了设置刻度线的位置,你可以使用一个matplotlib.dates.MonthLocator。为了使刻度具有特定的格式,您可以使用matplotlib.dates.DateFormatter。为了使标签不重叠,您可以使用autofmt_xdate()。为了有没有利润,你可以使用plt.margins(x=0,y=0):

plt.gca().xaxis.set_major_locator(matplotlib.dates.MonthLocator())

plt.gca().xaxis.set_major_formatter(matplotlib.dates.DateFormatter("%Y-%m"))

plt.gcf().autofmt_xdate()

plt.margins(x=0,y=0)

E6xCO.png

完整代码:

data = u"""month,data

2016-01,66

2016-02,68

2016-03,70

2016-04,72

2016-05,74

2016-06,76

2016-07,78

2016-08,80

2016-09,82

2016-10,84

2016-11,86

2016-12,88"""

import matplotlib.pyplot as plt

import matplotlib.ticker

import matplotlib.dates

import csv

from datetime import datetime

import io

def date_to_list(index):

""" save date to a list """

results = []

for row in data:

results.append(datetime.strptime(row[index], '%Y-%m'))

return results

def data_to_list(index):

""" save data to a list """

results = []

for row in data:

results.append(int(row[index]))

return results

with io.StringIO(data) as f:

data = csv.reader(f)

header = next(data)

data = list(data)

# save data and date to list

records = data_to_list(1)

date = date_to_list(0)

plt.plot(date, records)

plt.gca().xaxis.set_major_locator(matplotlib.dates.MonthLocator())

plt.gca().xaxis.set_major_formatter(matplotlib.dates.DateFormatter("%Y-%m"))

plt.gcf().autofmt_xdate()

plt.margins(x=0,y=0)

plt.show()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Matplotlib 中,可以通过设置坐标的位置来将其放置在图形的右侧。具体步骤如下: 1. 导入 Matplotlib 库和 pyplot 模块: ``` python import matplotlib.pyplot as plt ``` 2. 绘制你需要的图形,如折线图、散点图等。 3. 获取当前坐标对象,使用 `ax = plt.gca()` 或 `ax = plt.subplot()` 方法。 4. 使用 `ax.spines` 属性获取坐标对象的边框。 5. 对于需要移动的坐标,将其 `set_position()` 方法的参数设置为一个元组 `(x, y)`, 其中 x 和 y 分别表示坐标的位置。 6. 对于需要移动的坐标标签,使用 `set_position()` 方法设置标签的位置。 下面是一个示例代码,将 y 的标签移动到图形的右侧: ``` python import matplotlib.pyplot as plt import numpy as np # 生成示例数据 x = np.linspace(0, 10, 100) y = np.sin(x) # 绘制折线图 plt.plot(x, y) # 获取当前坐标对象 ax = plt.gca() # 将 y 移动到图形的右侧 ax.spines['right'].set_position(('axes', 1.0)) # 将 y 标签移动到图形的右侧 ax.yaxis.set_label_position('right') ax.yaxis.tick_right() # 显示图形 plt.show() ``` 在这个示例中,我们生成了一个正弦曲线的示例数据,并使用 `plt.plot()` 方法绘制了折线图。然后,我们获取当前坐标对象 `ax`,并使用 `ax.spines['right'].set_position(('axes', 1.0))` 将 y 移动到图形的右侧。最后,使用 `ax.yaxis.set_label_position('right')` 和 `ax.yaxis.tick_right()` 将 y 标签和刻度移动到图形的右侧。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值