python画黑白线条_python出“黑白”曲线图、柱状图(写黑白论文用)

本文介绍了如何使用Python将彩色图表转换为黑白,特别讨论了如何改变DataFrame的plot参数以创建黑白线条的曲线图,并提供了修改柱状图颜色和线条样式的实例代码,适用于制作黑白论文图表。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目的:从彩色图变黑白图图1图2图3图4

思路:

我到要出图这步骤时,是pandas的dataframe。

如果是要出曲线图,则直接在df.plot里改参数style即可。就能出图4。

fig = df.plot(kind='line', color='k', style=['--', ':', '-']

fig.savefig(r'xx/xxx/xx/xxx.jpg')

其中线性共有这些选项: '-', '--', '-.', ':', 'None', ' ', '', 'solid', 'dashed', 'dashdot', 'dotted'

其实总共就4种,'solid', 'dashed', 'dashdot', 'dotted' 就是 '-', '--', '-.', ':'。

如果你要用4中以上,资料显示可以调整黑白程度,就可以无数种。

fix,ax = plt.subplots()

ax.set_prop_cycle(

cycler(color=[(.8,.8,.8), (.5,.5,.5), (.2,.2,.2)]) *

cycler(linestyle=['-', '--', '-.'])

) #repeats after 9 columns

df.plot(ax=ax)

详见:How to have black-white/gray shade lines in pandas dataframe plot​stackoverflow.comv2-2d47e939feed796bcf7483d306661c88_ipico.jpg

---------------------------------------------------------------------------

要在Python中绘制带趋势曲线的柱状图,你可以使用matplotlib库。以下是一个示例代码,展示了如何实现这一目标: ```python import matplotlib.pyplot as plt import numpy as np # 示例数据 categories = ['A', 'B', 'C', 'D', 'E'] values = [4, 7, 1, 8, 3] trend = [5, 6, 2, 7, 4] # 创建图形和子图 fig, ax1 = plt.subplots() # 绘制柱状图 color = 'tab:blue' ax1.set_xlabel('Category') ax1.set_ylabel('Value', color=color) ax1.bar(categories, values, color=color) ax1.tick_params(axis='y', labelcolor=color) # 创建第二个y轴 ax2 = ax1.twinx() color = 'tab:red' # 绘制趋势曲线 ax2.plot(categories, trend, color=color, marker='o') ax2.set_ylabel('Trend', color=color) ax2.tick_params(axis='y', labelcolor=color) # 添加标题 plt.title('Bar Chart with Trend Line') # 显示图形 plt.show() ``` 这个代码使用了matplotlib库来创建一个包含柱状图和趋势曲线的图表。以下是代码的主要步骤: 1. 导入必要的库:matplotlib.pyplot和numpy。 2. 定义示例数据:categories(类别),values(柱状图的值)和trend(趋势曲线的值)。 3. 创建一个图形和子图。 4. 使用ax1绘制柱状图,并设置y轴标签和颜色。 5. 创建第二个y轴ax2,并使用ax2绘制趋势曲线。 6. 设置趋势曲线的y轴标签和颜色。 7. 添加图表标题。 8. 显示图表。 通过这种方式,你可以在同一个图表中展示柱状图和趋势曲线,以便更直观地比较数据。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值