Nano Hash - криптовалюты, майнинг, программирование

применять изображения к гистограммам pyplot python

Итак, ниже приведен фрагмент моего кода, и все работает нормально. Просто любопытно, вместо отображения полос с определенными цветами, можно ли применить к полосе изображение, например, флаг страны и т. Д. (Пожалуйста, игнорируйте мой непоследовательный порядок передачи параметров)

Благодарность

l_images=["australia.png","turkey.png"] # this is desired
l_colors=["pink","blue"]

if (l_bar_dir=="vertical"):                             
 plt.bar(xs2,ys,tick_label=xs,color=l_colors,bottom=bottoms,width=bar_width,align='center') # set plot to be a bar graph
else:                           
 plt.barh(bottom=xs2,width=ys,tick_label=xs,align='center',color=l_colors) # set plot to be a bar graph

Ответы:


1

Насколько я знаю, для этого нет встроенного способа, хотя matplotlib позволяет штриховать гистограммы. См., например, hatch_demo.

Но не так уж сложно собрать несколько вызовов plt.imshow в виде гистограммы. Вот довольно грубая функция, которую можно использовать для создания базовых гистограмм с использованием изображений, используя ваше представление о флагах как изображениях.

import numpy as np
import matplotlib.pyplot as plt
from scipy.misc import imread

def image_plot(heights, images, spacing=0):
    # Iterate through images and data, autoscaling the width to
    # the aspect ratio of the image
    for i, (height, img) in enumerate(zip(heights, images)):
        AR = img.shape[1] / img.shape[0]
        width = height * AR
        left = width*i + spacing*i
        right = left + width
        plt.imshow(img, extent=[left, right, 0, height])
    # Set x,y limits on plot window
    plt.xlim(0, right)
    plt.ylim(0, max(heights)*1.1)

# Read in flag images
usa_flag = imread('american_flag.png')
aussie_flag = imread('australian_flag.png').swapaxes(0, 1)
turkish_flag = imread('turkish_flag.png').swapaxes(0, 1)

# Make up some data about each country
usa_data = 33
aussie_data = 36
turkish_data = 27

data = [usa_data, aussie_data, turkish_data]
flags = [usa_flag, aussie_flag, turkish_flag]

image_plot(data, flags, spacing=2)

Не делая ничего необычного для осей x и y, возвращает этот график.

введите описание изображения здесь

16.10.2016
Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..