Python Matplotlib Box plot

2024/9/20 10:43:34

This is my dataframe:

{'Parameter': {0: 'A', 1: 'A', 2: 'A', 3: 'A', 4: 'A', 5: 'A', 6: 'A', 7: 'A'},'Site': {0: 'S1',1: 'S2',2: 'S1',3: 'S2',4: 'S1',5: 'S2',6: 'S1',7: 'S2'},'Value': {0: 2.3399999999999999,1: 2.6699999999999999,2: 2.5600000000000001,3: 2.8900000000000001,4: 3.4500000000000002,5: 4.4500000000000002,6: 3.6699999999999999,7: 4.5599999999999996}}

I am trying to plot boxplot of parameter by site. What is an easiest way to do it? Additional question is if i will have more than 1 parameter, what will be the easiest way to plot boxplot using matplotlib by parameter? Thank you

Answer

You're going to want to use the DataFrame.boxplot method and group by the "Parameter" and "Site" columns.

import matplotlib.pyplot as plt
from pandas import DataFramedf = DataFrame({'Parameter': ['A',]*8, 'Site': ['S1', 'S2', 'S1', 'S2', 'S1', 'S2', 'S1', 'S2'],'Value':  [2.34, 2.67, 2.56, 2.89, 3.45, 4.45, 3.67, 4.56]})df.boxplot(by=['Parameter', 'Site'])
plt.show()

enter image description here

If you want to plot a specific column of your data, you can use the column keyword argument to boxplot.

# Plot single value
df.boxplot(column='Value', by=['Parameter', 'Site'])# Plot Multiple values
df.boxplot(column=['Value', 'OtherValue'], by=['Parameter', 'Site'])
https://en.xdnf.cn/q/119381.html

Related Q&A

How to send turtle to random position?

I have been trying to use goto() to send turtles to a random position but I get an error when running the program.I am lost on how else to do this and not sure of other ways. My current code is:t1.shap…

How to scrape all p-tag and its corresponding h2-tag with selenium?

I want to get title and content of article: example web :https://facts.net/best-survival-movies/ I want to append all p in h2[tcontent-title]and the result expected is: title=[title1, title2, title3]co…

Tkinter: Window not showing image

I am new to GUI programming and recently started working with tKinter.My problem is that the program wont show my image, Im suspecing that it is my code that is wrong, however, I would like somone to e…

print dictionary minus two elements

Python 3.6All debug output is from PyCharm 2017.1.2I have a program that gets to this portion of the code:if len(errdict) == 21:for k, v in errdict.items():if k == packets output or bytes:continueprint…

Write CSV file using Python with the help of a csv dictionary / nested csv dictionary

I am having a csv file and i want to write it to another csv file. Its a bit complicated than it seems. Hoping someone to correct my code and rewrite it, so that i can get the desired csvfile. I am usi…

saving data to txt file using python

I am new in python, and I really need some help. I am doing this memory game where I need to save user, game score and time into a text file using python. I have tried several ways to do it, but nothin…

How can I create bounding boxes/contour around the outer object only - Python OpenCV

So Ive been trying to make bounding boxes around a couple of fruits that I made in paint. Im a total beginner to opencv so I watched a couple tutorials and the code that I typed made, makes contours ar…

resuming download file ftp python3.*

There is a file (1-7Gb) that you need to pick up. The network periodically falls, so it is necessary to implement the method of resume. For example, in 1 communication session downloaded 20% the networ…

printing files based on character

I have a directory(data) that contain thousand of files.Each time I want to select three files that are just differ by only one characterAB[C,D,E] and want to perform some computation on the selected t…

Parsing CSV file using Panda

I have been using matplotlib for quite some time now and it is great however, I want to switch to panda and my first attempt at it didnt go so well.My data set looks like this:sam,123,184,2.6,543 winte…