Aur*_*vir 4 python matplotlib pandas
我只想使用熊猫图获得水平网格。
pandas的集成参数仅具有grid=True或grid=False,因此我尝试使用matplotlib pyplot来更改轴参数,尤其是使用以下代码:
import pandas as pd
import matplotlib.pyplot as plt
fig = plt.figure()
ax2 = plt.subplot()
ax2.grid(axis='x')
df.plot(kind='bar',ax=ax2, fontsize=10, sort_columns=True)
plt.show(fig)
Run Code Online (Sandbox Code Playgroud)
但是我没有水平或垂直的网格。熊猫会覆盖轴吗?还是我做错了什么?
绘制DataFrame 后尝试设置网格。另外,要获取水平网格,您需要使用ax2.grid(axis='y')。以下是使用示例DataFrame的答案。
我已经ax2通过使用来重新定义了您的定义方式subplots。
import pandas as pd
import matplotlib.pyplot as plt
df = pd.DataFrame({'lab':['A', 'B', 'C'], 'val':[10, 30, 20]})
fig, ax2 = plt.subplots()
df.plot(kind='bar',ax=ax2, fontsize=10, sort_columns=True)
ax2.grid(axis='y')
plt.show()
Run Code Online (Sandbox Code Playgroud)
或者,您也可以执行以下操作:直接使用从DataFrame图返回的轴对象打开水平网格
fig = plt.figure()
ax2 = df.plot(kind='bar', fontsize=10, sort_columns=True)
ax2.grid(axis='y')
Run Code Online (Sandbox Code Playgroud)
@ayorgo在注释中建议的第三个选项是将两个命令链接为
df.plot(kind='bar',ax=ax2, fontsize=10, sort_columns=True).grid(axis='y')
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1888 次 |
| 最近记录: |