1

I would like to plot some time series of some data (x axis as time, y axis as some arbitrary data) in Python 2.7.

I need some part of the plot in another color\thicker line\vertical border to emphasize that this is the part of the plot that I want people to pay attention to.

I used matplotlib for the plot and I will be happy to keep working with it, but other ideas good too.

I tried this draw with matplotlib but this only tells me how to plot in general i tried this colors in matplotlib but this allowed to give different colors to different graph lines and i need to emphasize a part of the same line (a part of the dataset)

1 Answer 1

2

One approach would be to plot the highlighted section a second time as follows:

import matplotlib
import matplotlib.pyplot as plt
from datetime import datetime

x = [10, 20, 30, 40, 50, 60, 70, 80, 90, 100]
y = [1.2, 1.5, 2.1, 5.7, 8.3, 10.5, 8.5, 7.3, 9.0, 15.3]

bold = slice(3, 6)

fig = plt.figure()
ax = fig.add_subplot(1,1,1)
ax.set_xlabel('Time')
ax.set_ylabel('Data')
plt.setp(ax.get_xticklabels(), size=8)
ax.plot(x, y, 'b-', linewidth=2)
ax.plot(x[bold], y[bold], 'y-', linewidth=5)
ax.scatter(x, y)
ax.scatter(x[bold], y[bold], edgecolors='y', linewidths=5)
plt.grid()
plt.show()

This would give you:

Matplot lib screenshot

Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.