• Home
  • About Us
  • Contact Us
  • Disclaimer
  • Privacy Policy
Wednesday, July 9, 2025
newsaiworld
  • Home
  • Artificial Intelligence
  • ChatGPT
  • Data Science
  • Machine Learning
  • Crypto Coins
  • Contact Us
No Result
View All Result
  • Home
  • Artificial Intelligence
  • ChatGPT
  • Data Science
  • Machine Learning
  • Crypto Coins
  • Contact Us
No Result
View All Result
Morning News
No Result
View All Result
Home Machine Learning

From Default Python Line Chart to Journal-High quality Infographics | by Vladimir Zhyvov | Dec, 2024

Admin by Admin
December 30, 2024
in Machine Learning
0
1b1ldtefrk29fj3tkd2r2lw.png
0
SHARES
0
VIEWS
Share on FacebookShare on Twitter


Rework boring default Matplotlib line charts into gorgeous, personalized visualizations

Vladimir Zhyvov

Towards Data Science

Cowl, picture by the Creator

Everybody who has used Matplotlib is aware of how ugly the default charts appear to be. On this sequence of posts, I’ll share some methods to make your visualizations stand out and replicate your particular person model.

We’ll begin with a easy line chart, which is broadly used. The principle spotlight will likely be including a gradient fill beneath the plot — a activity that’s not fully easy.

So, let’s dive in and stroll by means of all the important thing steps of this transformation!

Let’s make all the mandatory imports first.

import pandas as pd
import numpy as np
import matplotlib.dates as mdates
import matplotlib.pyplot as plt
import matplotlib.ticker as ticker
from matplotlib import rcParams
from matplotlib.path import Path
from matplotlib.patches import PathPatch

np.random.seed(38)

Now we have to generate pattern knowledge for our visualization. We’ll create one thing much like what inventory costs appear to be.

dates = pd.date_range(begin='2024-02-01', durations=100, freq='D')
initial_rate = 75
drift = 0.003
volatility = 0.1
returns = np.random.regular(drift, volatility, len(dates))
charges = initial_rate * np.cumprod(1 + returns)

x, y = dates, charges

Let’s examine the way it appears to be like with the default Matplotlib settings.

repair, ax = plt.subplots(figsize=(8, 4))
ax.plot(dates, charges)
ax.xaxis.set_major_locator(mdates.DayLocator(interval=30))
plt.present()
Default plot, picture by Creator

Not likely fascination, proper? However we are going to steadily make it trying higher.

  • set the title
  • set common chart parameters — measurement and font
  • putting the Y ticks to the suitable
  • altering the primary line coloration, model and width
# Common parameters
fig, ax = plt.subplots(figsize=(10, 6))
plt.title("Day by day guests", fontsize=18, coloration="black")
rcParams['font.family'] = 'DejaVu Sans'
rcParams['font.size'] = 14

# Axis Y to the suitable
ax.yaxis.tick_right()
ax.yaxis.set_label_position("proper")

# Plotting primary line
ax.plot(dates, charges, coloration='#268358', linewidth=2)

Common params utilized, picture by Creator

Alright, now it appears to be like a bit cleaner.

Now we’d like so as to add minimalistic grid to the background, take away borders for a cleaner look and take away ticks from the Y axis.

# Grid
ax.grid(coloration="grey", linestyle=(0, (10, 10)), linewidth=0.5, alpha=0.6)
ax.tick_params(axis="x", colours="black")
ax.tick_params(axis="y", left=False, labelleft=False)

# Borders
ax.spines["top"].set_visible(False)
ax.spines['right'].set_visible(False)
ax.spines["bottom"].set_color("black")
ax.spines['left'].set_color('white')
ax.spines['left'].set_linewidth(1)

# Take away ticks from axis Y
ax.tick_params(axis='y', size=0)

Grid added, picture by Creator

Now we’re including a tine esthetic element — yr close to the primary tick on the axis X. Additionally we make the font coloration of tick labels extra pale.

# Add yr to the primary date on the axis
def custom_date_formatter(t, pos, dates, x_interval):
date = dates[pos*x_interval]
if pos == 0:
return date.strftime('%d %b '%y')
else:
return date.strftime('%d %b')
ax.xaxis.set_major_formatter(ticker.FuncFormatter((lambda x, pos: custom_date_formatter(x, pos, dates=dates, x_interval=x_interval))))

# Ticks label coloration
[t.set_color('#808079') for t in ax.yaxis.get_ticklabels()]
[t.set_color('#808079') for t in ax.xaxis.get_ticklabels()]

12 months close to first date, picture by Creator

And we’re getting nearer to the trickiest second — find out how to create a gradient underneath the curve. Really there is no such thing as a such choice in Matplotlib, however we will simulate it making a gradient picture after which clipping it with the chart.

# Gradient
numeric_x = np.array([i for i in range(len(x))])
numeric_x_patch = np.append(numeric_x, max(numeric_x))
numeric_x_patch = np.append(numeric_x_patch[0], numeric_x_patch)
y_patch = np.append(y, 0)
y_patch = np.append(0, y_patch)

path = Path(np.array([numeric_x_patch, y_patch]).transpose())
patch = PathPatch(path, facecolor='none')
plt.gca().add_patch(patch)

ax.imshow(numeric_x.reshape(len(numeric_x), 1), interpolation="bicubic",
cmap=plt.cm.Greens,
origin='decrease',
alpha=0.3,
extent=[min(numeric_x), max(numeric_x), min(y_patch), max(y_patch) * 1.2],
side="auto", clip_path=patch, clip_on=True)

Gradient added, picture by Creator

Now it appears to be like clear and good. We simply want so as to add a number of particulars utilizing any editor (I want Google Slides) — title, spherical border corners and a few numeric indicators.

Remaining visualization, picture by Creator

The complete code to breed the visualization is beneath:

READ ALSO

Run Your Python Code as much as 80x Sooner Utilizing the Cython Library

4 AI Minds in Live performance: A Deep Dive into Multimodal AI Fusion

Tags: ChartDecDefaultInfographicsJournalQualityLinePythonVladimirZhyvov

Related Posts

Untitled design 3 fotor 20250707164541 1024x527.png
Machine Learning

Run Your Python Code as much as 80x Sooner Utilizing the Cython Library

July 8, 2025
Chapter2 cover image capture.png
Machine Learning

4 AI Minds in Live performance: A Deep Dive into Multimodal AI Fusion

July 7, 2025
Plant.jpg
Machine Learning

Software program Engineering within the LLM Period

July 6, 2025
0 amyokmedcx2901jj.jpg
Machine Learning

My Sincere Recommendation for Aspiring Machine Studying Engineers

July 5, 2025
Blog image visual selection 1 1.png
Machine Learning

GraphRAG in Motion: A Easy Agent for Know-Your-Buyer Investigations

July 3, 2025
Tommy van kessel cii9r96nf8s unsplash scaled 1.jpg
Machine Learning

Why We Ought to Concentrate on AI for Girls

July 2, 2025
Next Post
0yqnqr1ayml9pausi.jpeg

Tips on how to Make sure the Stability of a Mannequin Utilizing Jackknife Estimation | by Paula LC | Dec, 2024

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

POPULAR NEWS

0 3.png

College endowments be a part of crypto rush, boosting meme cash like Meme Index

February 10, 2025
Gemini 2.0 Fash Vs Gpt 4o.webp.webp

Gemini 2.0 Flash vs GPT 4o: Which is Higher?

January 19, 2025
1da3lz S3h Cujupuolbtvw.png

Scaling Statistics: Incremental Customary Deviation in SQL with dbt | by Yuval Gorchover | Jan, 2025

January 2, 2025
0khns0 Djocjfzxyr.jpeg

Constructing Data Graphs with LLM Graph Transformer | by Tomaz Bratanic | Nov, 2024

November 5, 2024
How To Maintain Data Quality In The Supply Chain Feature.jpg

Find out how to Preserve Knowledge High quality within the Provide Chain

September 8, 2024

EDITOR'S PICK

0tilnntiouef9wbzq.jpeg

Demand Forecasting with Darts: A Tutorial | by Sandra E.G. | Jan, 2025

January 3, 2025
Oracle And Ibm Logos 2 1 0525.jpg

IBM and Oracle Develop Agentic AI and Hybrid Cloud Partnership

May 7, 2025
Kdn mehreen 10 marketplaces ds need to know.png

Promoting Your Facet Mission? 10 Marketplaces Information Scientists Must Know

June 10, 2025
Bitb crypto ninjas bitcoin etf.jpg

Bitwise launching spot bitcoin ETF (BITB) – CryptoNinjas

July 28, 2024

About Us

Welcome to News AI World, your go-to source for the latest in artificial intelligence news and developments. Our mission is to deliver comprehensive and insightful coverage of the rapidly evolving AI landscape, keeping you informed about breakthroughs, trends, and the transformative impact of AI technologies across industries.

Categories

  • Artificial Intelligence
  • ChatGPT
  • Crypto Coins
  • Data Science
  • Machine Learning

Recent Posts

  • Survey finds gaps in mainstream Bitcoin protection, leaving institutional buyers uncovered
  • Groq Launches European Knowledge Heart in Helsinki
  • Browser hijacking marketing campaign infects 2.3M Chrome, Edge customers • The Register
  • Home
  • About Us
  • Contact Us
  • Disclaimer
  • Privacy Policy

© 2024 Newsaiworld.com. All rights reserved.

No Result
View All Result
  • Home
  • Artificial Intelligence
  • ChatGPT
  • Data Science
  • Machine Learning
  • Crypto Coins
  • Contact Us

© 2024 Newsaiworld.com. All rights reserved.

Are you sure want to unlock this post?
Unlock left : 0
Are you sure want to cancel subscription?