其他参数和工具库
主题库和工具库基本语法
主题theme_
主要用来修改绘图的背景主题
基本语法 | Value |
---|---|
theme_bw | 黑色网格线白色背景的主题 |
theme_classic | 经典主题,带有x轴和y轴,没有网格线 |
theme_dark | 黑暗背景的主题 |
theme_gray | 灰色背景白色网格线的主题 |
theme_linedraw | 白色背景上只有各种宽度的黑色线条的主题 |
theme_light | 与theme_linedraw相似但具有浅灰色线条和轴的主题 |
theme_matplotlib | 默认的matplotlib外观 |
theme_minimal | 没有背景注释的简约主题 |
theme_seaborn | seaborn主题 |
theme_void | 具有经典外观的主题,带有x轴和y轴,没有网格线 |
theme_xkcd | xkcd主题 |
使用方法:在plotnine绘图语句中添加主题参数(后带括号),一般在绘图的公式结束之后添加,例如:
#导入数据
median_age_dict={
'Country': ['New Zealand','Spain','Ireland','Israel','Denmark','Norway','Netherlands','Australia','Italy','Sweden'],
'Age': [39.0, 37.0, 35.0, 34.0, 34.0, 34.0, 34.0, 34.0, 34.0, 34.0]
}
median_age=pd.DataFrame(median_age_dict)
#绘图,公式最后添加
(
ggplot(median_age,aes(x='Country',y='Age',fill='Country'))#创建图象,传入数据来源和映射
+ geom_bar(stat='identity',width=0.5)#建立几何对象,画直方图
+ geom_text(aes(x='Country',y='Age',label='Age'),nudge_y=2)#添加数据标签
+ coord_flip()#纵向直方图转换为横向直方图
+ xlim(median_age['Country'][::-1])#x轴排序
+ theme_dark()#添加主题背景
)
工具库theme
定义绘图的各个方面,用于创建主题和修改现有主题
基本语法 | Value |
---|---|
axis_line | 坐标轴的线条 |
axis_line_x | x轴的线条 |
axis_line_y | y轴的线条 |
axis_text | 坐标轴的文本 |
axis_text_x | x轴的文本 |
axis_text_y | y轴的文本 |
axis_ticks | 刻度线 |
axis_title | 标题 |
axis_title_x | x轴的标题 |
axis_title_y | y轴的标题 |
dpi | 像素点数 |
figure_size | 当前绘图的画布大小 |
legend_backgroud | 图例的背景 |
legend_box | 图例封装 |
legend_box_backgroud | 图例整体的背景 |
legend_position | 图例位置 |
legend_title | 图例标题 |
text | 当前图象的所有文本 |
title | 当前图像的所有标题 |
使用方法:在绘图公式的最后面添加theme函数,在里面添加不同的参数调整图片。注意:theme调整参数要按顺序来
例如:(还是用上面的数据)
(
ggplot(median_age,aes(x='Country',y='Age',fill='Country'))#创建图象,传入数据来源和映射
+ geom_bar(stat='identity',width=0.5)#建立几何对象,画直方图
+ geom_text(aes(x='Country',y='Age',label='Age'),nudge_y=2)#添加数据标签
+ coord_flip()#纵向直方图转换为横向直方图
+ xlim(median_age['Country'][::-1])#x轴排序
+ theme_dark()#添加主题背景
+ theme(legend_position = 'none',#隐藏图例
axis_text_x=element_text(color='darkred',size=12),#设置x轴文本为暗红色,尺寸为12
axis_text_y=element_text(color='darkred',size=12),#设置y轴文本为暗红色,尺寸为12
axis_title=element_blank()#隐藏标题(包括x轴和y轴)
)
)
这时候我们可以看到x轴和y轴的文本变成了红色,同时x轴和y轴的标题也隐藏了。
使用theme库有两个非常需要注意的地方:
- 尽量将theme放在绘图公式的最后面
- 对图形的调整一定要按照顺序来
例如,将上面公式的里面的theme和theme_dark顺序进行调换
(
ggplot(median_age,aes(x='Country',y='Age',fill='Country'))#创建图象,传入数据来源和映射
+ geom_bar(stat='identity',width=0.5)#建立几何对象,画直方图
+ geom_text(aes(x='Country',y='Age',label='Age'),nudge_y=2)#添加数据标签
+ coord_flip()#纵向直方图转换为横向直方图
+ xlim(median_age['Country'][::-1])#x轴排序
+ theme(legend_position = 'none',#隐藏图例
axis_text_x=element_text(color='darkred',size=12),#设置x轴文本为暗红色,尺寸为12
axis_text_y=element_text(color='darkred',size=12),#设置y轴文本为暗红色,尺寸为12
axis_title=element_blank()#隐藏标题(包括x轴和y轴)
)
+ theme_dark()#添加主题背景
)
这时候theme对图片的微调没有起到任何作用。
未完待续
Author:我不是小样