相关疑难解决方法(0)

在python matplotlib中旋转轴文本

我无法弄清楚如何旋转X轴上的文本.它是一个时间戳,随着样本数量的增加,它们越来越近,直到它们重叠.我想将文本旋转90度,以便样本靠近在一起,它们不重叠.

下面是我的,它工作得很好,除了我无法弄清楚如何旋转X轴文本.

import sys

import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt
import datetime

font = {'family' : 'normal',
        'weight' : 'bold',
        'size'   : 8}

matplotlib.rc('font', **font)

values = open('stats.csv', 'r').readlines()

time = [datetime.datetime.fromtimestamp(float(i.split(',')[0].strip())) for i in values[1:]]
delay = [float(i.split(',')[1].strip()) for i in values[1:]]

plt.plot(time, delay)
plt.grid(b='on')

plt.savefig('test.png')
Run Code Online (Sandbox Code Playgroud)

python matplotlib

261
推荐指数
11
解决办法
35万
查看次数

按像素值移动 matplotlib xticklabels

如何将刻度标签移动几个像素?

就我而言,我想将X 轴上的This is class #N -labels 向右移动几个像素。

知道的 horizontalalign/harightcenterleft; 但我想“改善”right对齐的外观。

以下面的例子为例,它将产生如下图所示的图:

import pandas as pd
import numpy as np

categories = ['This is class #{}'.format(n) for n in range(10)]
data = {
    'Value': [categories[np.random.randint(10)] for _ in range(100)], 
    'id': [1000+i for i in range(100)]
}

df = pd.DataFrame(data)

ax = df.Value.value_counts().sort_index().plot(kind='bar', rot=45)
plt.xticks(ha='right')
Run Code Online (Sandbox Code Playgroud)

结果是:

我主观上认为,如果将标签向右平移以便将勾号放在“#”上,情节会更好看。换句话说,是rightcenter对齐选项之间的“中间地带” 。

旁注

我正在使用熊猫,但我相信这与问题无关,因为它无论如何都使用 matplotlib 进行绘图。

该 …

python matplotlib python-3.x

0
推荐指数
1
解决办法
972
查看次数

标签 统计

matplotlib ×2

python ×2

python-3.x ×1