Matplotlib разброс / контурный гибридный участок - PullRequest
0 голосов
/ 30 января 2019

Я пытаюсь создать график с очень редкими данными без интерполяции.Я хотел бы создать что-то вроде этого

enter image description here

Другими словами, я хотел бы создать «гибрид scatterplot / countourplot».Возможно ли это в matplotlib?Если так, то как?Должен ли я использовать countourf () или scatterplot ()?Или что-то совсем другое?

Я создал пример набора данных ниже.

Большое спасибо!

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt 

In [1]:

d = {'col1': [0, 0, 0, 0, 0], 'col2': [0, 0.1, 0, 0, 0], 'col3': [0, 0.9, 0, 0, 0], 
     'col4': [0, 0, 0, 0.3, 0], 'col5': [0, 0, 0, 0, 0]}

df = pd.DataFrame(data=d)
df = df.replace(0, np.nan)


Out [1]: 

   col1  col2  col3  col4  col5
0   NaN   NaN   NaN   NaN   NaN
1   NaN   0.1   0.9   NaN   NaN
2   NaN   NaN   NaN   NaN   NaN
3   NaN   NaN   NaN   0.3   NaN
4   NaN   NaN   NaN   NaN   NaN

построение с контуром ():

y = df.index.values
x = df.columns.values
z = df
fig1 = plt.contourf(x, y, z)
...