echarts x轴显示不全_一个操作证明python数据可视化比excel强百倍:X轴刻度间隔显示...

关于谁强谁若其实没必要多说,但是谁更厉害,操作性更强,今天用一个实例来证明:

  • 如果数据量较少,在excel中可视化的操作带来的便捷性是绝对的占据优势的,
  • 但是,如果数据量很大,我劝你不要费劲了,excel没有那个功能
  • ecxel中一个无法解决的问题就是:X轴如果显示刻度就是出现看不清楚刻度,一大堆密密麻麻的数据,无法美化显示效果,

而我们想要的效果可是,简化显示的内容,间隔显示刻度可能就是一个很好的解决方案

这个方法我也找了很久了,今天分享给大家

在excel里面:

bb6855d342167bc599d6feb6f9424dc3.png

出现的问题主要有:

  • 不能全部显示刻度标签
  • 无法间隔显示刻度

导入今天的素材:

df = pd.read_csv("https://github.com/selva86/datasets/economics.csv")

如果可以加载不进去,跳转:https://github.com/selva86/datasets/。自行下载

预览一下数据:

3a7c91d48011aa907a79982cfd990851.png

我们的数据源是1967年到2015年的经济数据,共574条,如果

第二步如果不对X轴进行设置,将574个标签刻度全部显示将会是怎样?

c16b7026e5aeaa57f89181ff46c51a7a.png

可以看到我们的X轴的刻度标签已经完全看不到了

而我们可能更想要的是简化版的刻度,比如按照年或者更精简的显示方式,只要大致能看出来时间就好

修改x轴间隔为12:

023415c73dbe8a1d77c530ff8b818efd.png

此时X轴的标签刻度已经减少了很多,但是仍旧没有达到想要的效果,如果我们将其旋转90度:

9ed3e0e1023924ea7b286d109e895872.png

虽然勉强将显示效果略有提高,但是不便于观看,所以,还需要再继续将间隔拉大

将间隔设置为30后:已经达到了我们想要的效果

130adfbb1b1e43a2c076995d38c73647.png

方法解析:

fb8ac030f7e25ae39564cc2ed863b26a.png

设置x轴的角度:rotation:ax1.tick_params(axis='x', rotation=0, labelsize=12)

设置显示间隔:

ax2.set_xticks(np.arange(0, len(x),30))

ax2.set_xticklabels(x[::30], rotation=90, fontdict={'fontsize':10})

思路其实很简单,你有574个数据,你只需要提供两个列表,一个是从0开始到573中的,另外一个就是需要显示的日期的,只要将两个数据的间隔设置为一致,你想怎么显示都可以啦

源代码:

x = df['date']y1 = df['psavert']y2 = df['unemploy']# Plot Line1 (Left Y Axis)fig, ax1 = plt.subplots(1,1,figsize=(30,9), dpi= 80)ax1.plot(x, y1, color='tab:red')# Plot Line2 (Right Y Axis)ax2 = ax1.twinx() # instantiate a second axes that shares the same x-axisax2.plot(x, y2, color='tab:blue')# Decorations# ax1 (left Y axis)ax1.set_xlabel('Year', fontsize=20)ax1.tick_params(axis='x', rotation=0, labelsize=12)ax1.set_ylabel('Personal Savings Rate', color='tab:red', fontsize=20)ax1.tick_params(axis='y', rotation=0, labelcolor='tab:red' )ax1.grid(alpha=.4)# ax2 (right Y axis)ax2.set_ylabel("# Unemployed (1000's)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值