Create a Student-Age graph in Python-Matplotlib
Date : March 29 2020, 07:55 AM
Hope that helps The error occurs because matplotlib is expecting numerical data but you're providing strings (the names). What you can do instead is plot your data using some numerical data and then replace the ticks on the x-axis using plt.xticks as below. import matplotlib.pyplot as plt
names = ['Eric','John','Bill','Daniel']
x = range(len(names))
y = [10, 17, 12.5, 20]
plt.plot(x, y)
plt.xticks(x, names)
plt.show()
|
Create continuous graph using matplotlib and pandas
Tag : python , By : Mighty Mac
Date : March 29 2020, 07:55 AM
should help you out I have a dataframe like this. , When I construct the dataframe as such: df = pd.DataFrame([[22, 90, 98],
[50, 06, 56],
[60, 58, 44],
[30, 62, 00]],
index=pd.Index([7, 8, 23, 49], name='MyIndexex'),
columns=['column1', 'column2', 'column3'])
print df
column1 column2 column3
MyIndexex
7 22 90 98
8 50 6 56
23 60 58 44
49 30 62 0
df.plot()
df.index = df.index.astype(int)
df.plot()
|
How do I create a graph that has a continuous axes with matplotlib?
Date : March 29 2020, 07:55 AM
seems to work fine Matplotlib is does not plot functions, but rather points. Of course any continuous function can be approximated by points if they are only dense enough. The problem indeed occurs when zooming into the plot, in which case formerly dense points will spread out and a polygonial structure will be observable. Inversely when zooming out, it may happen that the function has not been evaluated outside a specific range and hence the plot will stay mostly empty. import numpy as np
import matplotlib.pyplot as plt
func = lambda x: (2*x)**2 + 2*x + -4 + 0.2*np.sin(x*20)
fig, ax = plt.subplots()
ax.axis([-8,8,-100,400])
line, = ax.plot([])
def update(evt=None):
xmin,xmax = ax.get_xlim()
npoints = fig.get_size_inches()[0]*fig.dpi
x = np.linspace(xmin, xmax, npoints)
y = func(x)
line.set_data(x,y)
fig.canvas.draw_idle()
ax.callbacks.connect('xlim_changed', update)
fig.canvas.mpl_connect("resize_event", update)
plt.show()
|
Create a detailed svg graph with matplotlib
Date : March 29 2020, 07:55 AM
With these it helps I use the Python library matplotlib to draw a graph with a lot of data. Upon executing plt.show() I can zoom in and see the details of the graph. However, I would like to save the graph into a svg file with plt.savefig and see these details which by default are not visible from the default non-zoomed-in view. How can I do that? , A workaround could be adding the size of the figure: import matplotlib.pyplot as plt
import numpy as np
import math
x = np.arange(0,100,0.00001)
y = x*np.sin(2*math.pi*(x**1.2))
fig = plt.figure(figsize=(19.20,10.80))
plt.plot(y)
plt.savefig('test.svg')
import matplotlib.pyplot as plt
import numpy as np
import math
x = np.arange(0,100,0.00001)
y = x*np.sin(2*math.pi*(x**1.2))
#fig = plt.figure(figsize=(19.20,10.80))
plt.plot(y, linewidth=0.1)
plt.savefig('test.svg')
|
How to use matplotlib to create a large graph of subplots?
Date : March 29 2020, 07:55 AM
|