x-xticks用于不连续数据

时间:2018-11-25 19:39:50

标签: python matplotlib

我的x值T =(585,590,595,605)有不连续的数据。我需要它们在x轴上均匀分布。

我不能使用“ T.astype(str)”,因为我需要添加/减去一点,因为每个值都有三个小节。

这是现在的样子: Click for image

代码如下:

import matplotlib.pyplot as plt
import pandas as pd
import numpy as np

# Read exel file
Tabelle = pd.read_excel("path.xlsx", nrows=4)

# T = temperature for (x-axis):
T = Tabelle["T./°C"]
xpos = np.array(T, dtype=int)

# for Rp/Rm/e over T:
y = Tabelle["MW. Rm"]
y1 = Tabelle["MW. Rp0,2"]
y2 = Tabelle["MW. e"]

# barwidth
w = 0.33

# figures in grid:
fig = plt.figure(figsize=(10, 5))

# graph in 0,0:
ax1 = plt.subplot2grid(shape=(1, 2), loc=(0, 0))

# graphs in (0,0):
ax1.bar(xpos - 0.33, y, label="Rm", color="firebrick", width=-0.5, align="edge")
ax1.bar(xpos, y1, label="Rp0,2", color="c", width=0.5, align="center")
ax2 = ax1.twinx()
ax2.bar(xpos + 0.33, y2, label="ε-Bruch", color="orange", width=0.5, align="edge")

# settings (0,0):
ax1.set_xlabel("Gießtemperatur / °C")
ax1.set_ylim(0, 250)
ax2.set_ylim(0, 5)
ax1.set_ylabel("Rp0,2 und Rm / N/mm²")
ax2.set_ylabel("Bruchdehnung / %")

plt.show()

计划为(1,2)网格,但(0,1)中什么都没有。

我该怎么做才能获得xticks和585,590,595,605的标签,并且仍然能够使三个条形图彼此相邻?

感谢您的帮助和欢呼,

亚历克斯

0 个答案:

没有答案