plt.yticks咋用 柱形图
时间: 2023-07-20 17:12:29 浏览: 87
在柱形图中,使用 `plt.yticks()` 同样可以设置 y 轴上的刻度值和标签。下面是一个简单的例子:
```python
import matplotlib.pyplot as plt
import numpy as np
# 生成数据
x = np.arange(5)
y = [2, 4, 6, 8, 10]
# 绘制柱形图
plt.bar(x, y)
# 设置 y 轴刻度的值和标签
plt.yticks([0, 2, 4, 6, 8, 10], ['0', '2', '4', '6', '8', '10'])
# 显示图形
plt.show()
```
在上面的例子中,我们同样设置了 y 轴上的刻度值为 0、2、4、6、8、10,对应的标签分别为 '0'、'2'、'4'、'6'、'8'、'10'。注意,柱形图的 x 轴刻度值通常为离散的类别,而不是连续的数字,因此这里没有设置 x 轴的刻度。如果需要设置 x 轴刻度,可以使用 `plt.xticks()` 函数。
相关问题
import pandas as pd import matplotlib.pyplot as plt # 读取Excel文件 data = pd.read_excel('C:\Users\zwj\Desktop\豆瓣读书排行榜-清洗后.xlsx') # 按评分值降序排序,并选取TOP5电影 top5 = data.sort_values(by='评分', ascending=False).head(5) plt.rcParams['font.sans-serif']='SimHei' # 提取电影名称和评分值 movies = top5['书名'] ratings = top5['评分'] # 绘制柱形图 plt.bar(movies, ratings) plt.xlabel('电影') plt.ylabel('评分') plt.title('豆瓣排行榜评分值TOP5电影') plt.xticks(rotation=8) # 旋转X轴刻度标签,以便更好地显示电影名称 plt.show()将代码纵坐标细化刻度让对比明显
可以 `plt.yticks()` 函数来设置纵坐标的刻度,例如:
```python
import pandas as pd
import matplotlib.pyplot as plt
# 读取Excel文件
data = pd.read_excel('C:\Users\zwj\Desktop\豆瓣读书排行榜-清洗后.xlsx')
# 按评分值降序排序,并选取TOP5电影
top5 = data.sort_values(by='评分', ascending=False).head(5)
plt.rcParams['font.sans-serif'] = 'SimHei'
# 提取电影名称和评分值
movies = top5['书名']
ratings = top5['评分']
# 绘制柱形图
plt.bar(movies, ratings)
plt.xlabel('电影')
plt.ylabel('评分')
plt.title('豆瓣排行榜评分值TOP5电影')
plt.xticks(rotation=8) # 旋转X轴刻度标签,以便更好地显示电影名称
# 设置纵坐标刻度,将刻度分成10份
plt.yticks([i/10 for i in range(0, 11)])
plt.show()
```
这样就可以将纵坐标的刻度分成10份,让对比更加明显。
import matplotlib.pyplot as plttop_names = sorted(count_dict.items(), key=lambda x: x[1], reverse=True)[:10]top_names_dict = dict(top_names)plt.bar(top_names_dict.keys(), top_names_dict.values())plt.title('Top 10 Names in War and Peace')plt.xlabel('Names')plt.ylabel('Frequency')plt.show()
您好,看到您的代码,我发现可能有一个小问题,就是可能会出现中文乱码的情况。在使用matplotlib库绘制中文柱形图或饼图时,需要使用中文字体,否则会出现中文乱码的情况。
您可以在代码中添加以下语句,来指定中文字体:
```python
from matplotlib.font_manager import FontProperties
font = FontProperties(fname='SimHei.ttf', size=14)
```
其中,SimHei.ttf是Windows系统中的一种中文字体,您可以根据自己的需要进行更改。然后,在绘制柱形图或饼图时,将中文字体传入:
```python
plt.bar(top_names_dict.keys(), top_names_dict.values())
plt.title('《战争与和平》中出现最多的10个人名', fontproperties=font, fontsize=16)
plt.xlabel('姓名', fontproperties=font, fontsize=14)
plt.ylabel('出现次数', fontproperties=font, fontsize=14)
plt.xticks(fontproperties=font, fontsize=12)
plt.yticks(fontproperties=font, fontsize=12)
plt.show()
```
这样,就能够避免中文乱码的问题,生成漂亮的中文柱形图或饼图了。
阅读全文