<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: FlyingBanana</title>
    <description>The latest articles on Forem by FlyingBanana (@observedobserver).</description>
    <link>https://forem.com/observedobserver</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1006767%2F175a0ada-4e2a-4e59-8e39-b0694cd19104.gif</url>
      <title>Forem: FlyingBanana</title>
      <link>https://forem.com/observedobserver</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/observedobserver"/>
    <language>en</language>
    <item>
      <title>Photes.io: An AI Assistant More Than Image-to-Text</title>
      <dc:creator>FlyingBanana</dc:creator>
      <pubDate>Wed, 20 Nov 2024 10:26:00 +0000</pubDate>
      <link>https://forem.com/observedobserver/photesio-an-ai-assistant-more-than-image-to-text-3nee</link>
      <guid>https://forem.com/observedobserver/photesio-an-ai-assistant-more-than-image-to-text-3nee</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Foo2seej0uu4jdyyw.public.blob.vercel-storage.com%2Fphotes-blog%2F1728618629047_image-0NRbsQEpBA5phG3eFRyxeaISs3mETb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Foo2seej0uu4jdyyw.public.blob.vercel-storage.com%2Fphotes-blog%2F1728618629047_image-0NRbsQEpBA5phG3eFRyxeaISs3mETb.png" alt="Photes.io: a multipurpose AI assistant" width="800" height="396"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;When it comes to how to turn images to text, you must think of &lt;a href="https://photes.io" rel="noopener noreferrer"&gt;Photes.io&lt;/a&gt;. It is an AI tool using the most advanced OCR technology to recognize the information within the picture. However, Photes.io serves more than an image-to-text AI tool. It’s also a note-taking app and a platform to know more about others’ notes. Go ahead and explore more about Photes.io!&lt;/p&gt;

&lt;h2&gt;
  
  
  What’s OCR
&lt;/h2&gt;

&lt;p&gt;Before introducing what Photes.io is, you must know something about OCR, the fundamental technology of Photes.io. Optical Character Recognition (OCR) is a technology that converts different types of documents, such as scanned paper documents, PDFs, or images captured by a digital camera, into editable and searchable data. Here are some key points about OCR:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Functionality: OCR software analyzes the shapes of letters and words in an image and translates them into machine-readable text. This process involves recognizing characters, words, and formatting to create a digital version of the original document.&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Applications: OCR is widely used in various fields, including digitizing printed documents for archiving, automating data entry processes, enabling text-to-speech applications, and assisting in accessibility for visually impaired users.&lt;br&gt;
OCR has evolved significantly with AI and machine learning, improving its ability to handle complex documents with different layouts, fonts, and languages. Its main features are as follows:&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Image Quality: High-resolution images with clear contrast improve OCR accuracy.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Font Style and Size: OCR performs best with standard fonts. Handwritten text or highly stylized fonts can be challenging.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Language Support: Advanced OCR systems support multiple languages, which is crucial for international applications.&lt;/p&gt;
&lt;h2&gt;
  
  
  What’s Photes.io
&lt;/h2&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Now you’ve mastered the fundamental technology of Photes.io. So what about Photes.io? What does it do and how to use it? Let me introduce more details.&lt;/p&gt;

&lt;p&gt;Photes.io is an image-to-text tool converting complex infographics from images into editable and structured notes. Photes.io helps you grab the information in pictures and organize it to notes so that you could focus on more important things.&lt;/p&gt;

&lt;h3&gt;
  
  
  Key Features
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;AI-Powered Text Extraction: With the help of GPT-4, things Photes.io can do are beyond simple OCR. It can catch the key points accurately and output structured notes, even when your photos include complicated information like tables and charts. &lt;/li&gt;
&lt;li&gt;Overall Recognition: One of the advantages of Photes.io is it could understand all kinds of information in your pictures, including text, chart like Venn or statistical graph.&lt;/li&gt;
&lt;li&gt;Improved Structure: Instead of simple words recognition and output, Photes.io could recognize the image and output well-structured notes. It helps you keep your notes structured and easily available.&lt;/li&gt;
&lt;li&gt;Wide Reference: More than extract information within your image, Photes.io will search related knowledge through the internet. So you can learn more beyond your image.
Photes.io has its own strengths compared with its rivals. You can upload your photos and turn them into notes with just a few clicks. After you upload your photos, it’ll turn your photos to well-structured text notes with AI. More surprisingly, it can integrate with other note-taking apps you prefer.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  How to Use Photes.io
&lt;/h2&gt;

&lt;p&gt;Now you may be curious about how to use it. By the way, Photes.io support both laptop and phone. The first thing you should do is registering for an account.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F54f8nmyct1xx344x7vd9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F54f8nmyct1xx344x7vd9.png" alt="Sign up for Photes.io" width="800" height="458"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;To begin with, you’re equipped with 50 credits ever day. After signing up, you can upload you photos in your computer.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdqi5a64jzlwajv1687rm.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdqi5a64jzlwajv1687rm.gif" alt="Upload your photos and turn them into notes" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you prefer use it on your phone, it’s also very convenient. Follow the steps below and you can get notes generated from your photos.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Foo2seej0uu4jdyyw.public.blob.vercel-storage.com%2Fphotes-blog%2F1728618634296_image-iu7qCIBfv2Ghap8Fwv8ANHsQh2M0Ye.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Foo2seej0uu4jdyyw.public.blob.vercel-storage.com%2Fphotes-blog%2F1728618634296_image-iu7qCIBfv2Ghap8Fwv8ANHsQh2M0Ye.png" alt="Use Photes.io on the phone" width="800" height="327"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;However, things Photes.io can do are more than turn your images to structured notes. Here are three more reasons attracting you to use it.&lt;/p&gt;

&lt;h2&gt;
  
  
  Photes.io serves as an AI Ency providing you more knowledge
&lt;/h2&gt;

&lt;p&gt;When you upload your image to Photes.io, it’ll extract and summarize the information included in the image. Moreover, it’ll search more related knowledge through the internet and integrate all the information into a structured note for you.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flbvdf8ymmfhf0zwwzq3x.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flbvdf8ymmfhf0zwwzq3x.png" alt="Reference from the internet" width="800" height="333"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Photes.io serves as a helper to manage your notes
&lt;/h2&gt;

&lt;p&gt;Photes.io also serves as a note-taking app. You can not only use it as an image-to-text AI tool, but also use it as a helper to manage your notes. You can edit your notes and change the note books as you wish. Even you can integrate it with other note-taking apps like Notion, Obsidian, Google Docs.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbd04q1mf3em95lhoey4m.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbd04q1mf3em95lhoey4m.png" alt="Integrate with other note-taking apps" width="800" height="956"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Photes.io serves as a platform you explore others’ notes
&lt;/h2&gt;

&lt;p&gt;Photes.io provides a platform that you can share your notes and explore other’s notes. There is no doubt that your note is private at first. If you want more credits or just want to share your note, you can make it public. In the Explore page, you can see many interesting notes shared by others.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0wbszyl2nrt0n38hiopr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0wbszyl2nrt0n38hiopr.png" alt="Page of Explore" width="800" height="531"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Pricing
&lt;/h2&gt;

&lt;p&gt;The app provides basic features for free, you can get a free trial. And you have daily limited credits. Though, you can get more credits by sharing your notes to public. Moreover, you could considerate the paid plans. Details are showed in the table below. The annual plan is more cost-effective! There’re also one-payment plans that $1 for one day, $2 for 3 days, and $3 for a week.&lt;/p&gt;

&lt;p&gt;Click here to know more about the pricing!&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;Photes.io is a powerful AI tool that converts images into structured notes using advanced OCR. Beyond text extraction, it integrates with note-taking apps, enriches content with online references, and allows for easy sharing and management. Ideal for boosting productivity, it’s a versatile solution for efficiently handling visual information. Come have a try and enjoy you notes generated by Photes.io!&lt;/p&gt;

</description>
    </item>
    <item>
      <title>PyGWalker + Gradio = free Tableau</title>
      <dc:creator>FlyingBanana</dc:creator>
      <pubDate>Mon, 23 Oct 2023 00:01:42 +0000</pubDate>
      <link>https://forem.com/observedobserver/interactive-data-visualization-with-pygwalker-gradio-4klm</link>
      <guid>https://forem.com/observedobserver/interactive-data-visualization-with-pygwalker-gradio-4klm</guid>
      <description>&lt;p&gt;&lt;a href="https://huggingface.co/spaces/observedobserver/pygwalker-gradio"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--dV3uJ7-h--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://imagedelivery.net/tSvh1MGEu9IgUanmf58srQ/b725bf29-1cc8-4da0-3f65-db3207bde900/public" alt="Interactive Demo on Huggingface" width="800" height="589"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  Interactive Data Visualization with PyGWalker &amp;amp; Gradio
&lt;/h1&gt;

&lt;p&gt;&lt;code&gt;pygwalker&lt;/code&gt; is a powerful tool for data scientists, akin to Tableau or PowerBI, to instantly transform data into interactive visuals within Jupyter Notebooks. But, the challenge arises in sharing these interactive experiences. Enter Gradio - a library that swiftly turns machine learning models and functions into web apps. This article provides a quick guide on pairing &lt;code&gt;pygwalker&lt;/code&gt; with Gradio for enhanced data sharing.&lt;/p&gt;

&lt;h2&gt;
  
  
  Quick Introduction to Gradio
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://gradio.app/"&gt;Gradio&lt;/a&gt; is more than just a Python library. It’s a bridge that connects your data or model with a user-friendly interface, making it simple to create and share web apps in just a few code lines.&lt;/p&gt;

&lt;h2&gt;
  
  
  Getting Started with PyGWalker in Gradio
&lt;/h2&gt;

&lt;p&gt;Ensure you're running Python 3.6 or above. Then, you can commence with the following steps:&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Set Up Your Environment
&lt;/h3&gt;

&lt;p&gt;Ensure you've installed both &lt;code&gt;pygwalker&lt;/code&gt; and &lt;code&gt;gradio&lt;/code&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;pip &lt;span class="nb"&gt;install &lt;/span&gt;pygwalker gradio
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  2. Code Preparations
&lt;/h3&gt;

&lt;p&gt;Kick things off by importing the required libraries:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;gradio&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="n"&gt;gr&lt;/span&gt;
&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;pygwalker&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="n"&gt;pyg&lt;/span&gt;
&lt;span class="kn"&gt;from&lt;/span&gt; &lt;span class="nn"&gt;datasets&lt;/span&gt; &lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;load_dataset&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  3. Data Loading
&lt;/h3&gt;

&lt;p&gt;Here, we'll employ the NYC-Airbnb dataset from Gradio, though you're free to select your dataset:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;dataset&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;load_dataset&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"gradio/NYC-Airbnb-Open-Data"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;split&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;"train"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="n"&gt;df&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;dataset&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;to_pandas&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  4. Crafting the Gradio Interface
&lt;/h3&gt;

&lt;p&gt;Using Gradio's &lt;code&gt;Blocks&lt;/code&gt; feature, set up the UI components:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="k"&gt;with&lt;/span&gt; &lt;span class="n"&gt;gr&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Blocks&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="n"&gt;demo&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
    &lt;span class="n"&gt;gr&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Label&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Visualize NYC-Airbnb Data with PyGWalker &amp;amp; Gradio"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="n"&gt;gr&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Markdown&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Experience data interaction using pygwalker and gradio. Dive deep with drag-and-drop or commence your analysis!"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="n"&gt;gr&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;HTML&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;pyg&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;walk&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;dataset&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="n"&gt;df&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;spec&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;"./viz-config.json"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;debug&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="bp"&gt;False&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;return_html&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="bp"&gt;True&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This segment configures the title, description, and integrates the &lt;code&gt;pygwalker&lt;/code&gt; visualization into the Gradio UI.&lt;/p&gt;

&lt;h3&gt;
  
  
  5. Go Live!
&lt;/h3&gt;

&lt;p&gt;Launch your web app with:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;demo&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;launch&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Upon running, you'll witness the interactive visualization in a browser. Delve into the dataset using intuitive drag-and-drop or employ natural language (a kanaries API key activation is needed).&lt;/p&gt;

&lt;p&gt;&lt;a href="https://huggingface.co/spaces/observedobserver/pygwalker-gradio"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--dV3uJ7-h--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://imagedelivery.net/tSvh1MGEu9IgUanmf58srQ/b725bf29-1cc8-4da0-3f65-db3207bde900/public" alt="Interactive Demo on Huggingface" width="800" height="589"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Wrapping Up
&lt;/h2&gt;

&lt;p&gt;Merging &lt;code&gt;pygwalker&lt;/code&gt; with &lt;code&gt;gradio&lt;/code&gt; presents a streamlined avenue to craft and disseminate interactive data visualizations. This combo doesn't just amplify data probing but also broadens data insights' reach, granting even those without a tech background the ability to engage with your discoveries. Dive in and let the world see your insights!&lt;/p&gt;

&lt;h2&gt;
  
  
  Dive Deeper
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://docs.kanaries.net/pygwalker"&gt;Official PyGWalker Documentation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://huggingface.co/spaces/observedobserver/pygwalker-gradio"&gt;Interactive Playground: pygwalker + gradio&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/Kanaries/pygwalker"&gt;pygwalker GitHub Repository&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://docs.kanaries.net/pygwalker/tutorials/use-pygwalker-in-gradio"&gt;Gradio Usage with pygwalker&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>python</category>
      <category>datascience</category>
      <category>tutorial</category>
      <category>opensource</category>
    </item>
    <item>
      <title>Top 10 growing data visualization libraries in Python in 2023</title>
      <dc:creator>FlyingBanana</dc:creator>
      <pubDate>Wed, 11 Oct 2023 02:55:08 +0000</pubDate>
      <link>https://forem.com/observedobserver/top-10-growing-data-visualization-libraries-in-python-in-2023-20al</link>
      <guid>https://forem.com/observedobserver/top-10-growing-data-visualization-libraries-in-python-in-2023-20al</guid>
      <description>&lt;p&gt;Let's delve deeper into the new trending of the top 10 data visualization Python libraries in 2023. The ranking is based on the stars received by the library's github repo in 2023. The more stars it received, the higher it ranks.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--FNNvSU1N--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://docs-us.oss-us-west-1.aliyuncs.com/images/py-dataviz-lib/star-stat-2023.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--FNNvSU1N--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://docs-us.oss-us-west-1.aliyuncs.com/images/py-dataviz-lib/star-stat-2023.png" alt="" width="800" height="286"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  No. 1 &lt;strong&gt;PyGWalker&lt;/strong&gt;
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;Stars received by kanaries/pygwalker since 2023: 7486&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The most popular data visualization python library in 2023. It turns your dataframe into an interactive data exploration app like tableau/powerBI with one line of code.&lt;br&gt;
&lt;a href="https://github.com/Kanaries/pygwalker"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--MfWfvUsW--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://user-images.githubusercontent.com/8137814/221879671-70379d15-81ac-44b9-b267-a8fa3842a0d9.png" alt="" width="800" height="578"&gt;&lt;/a&gt;&lt;br&gt;
It provides simple drag-and-drop/chat interface for you to build charts.&lt;br&gt;
It can run in juypter notebook, which means you do not need to switch between your code and the visualization app.&lt;br&gt;
Besides, you can also build interactive spitial visualization on maps with it.&lt;br&gt;
&lt;a href="https://github.com/Kanaries/pygwalker"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--zFNSYoiE--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://github.com/Kanaries/pygwalker/assets/22167673/32da0a21-e69e-47f4-a22c-da073a17f3c6" alt="" width="800" height="453"&gt;&lt;/a&gt;&lt;br&gt;
And it also has Javascript and R version.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Pros&lt;/strong&gt;: Interactive data exploration app with one line of code; drag-and-drop/chat interface; interactive spitial visualization on maps.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cons&lt;/strong&gt;: Not very flexible to customizable styles;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Github: &lt;a href="https://github.com/Kanaries/pygwalker"&gt;https://github.com/Kanaries/pygwalker&lt;/a&gt;&lt;br&gt;
HomePage: &lt;a href="https://kanaries.net/pygwalker"&gt;PyGWalker Homepage&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  No. 2 &lt;strong&gt;Matplotlib&lt;/strong&gt;
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;Stars received by matplotlib/matplotlib since 2023: 1821&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Matplotlib is a very traditional data visualization library in Python published in 2003. It is the foundation of many other libraries, such as seaborn, pygal, and so on.&lt;br&gt;
It is very flexible and customizable, but it is also very verbose and not very efficient, which usually requires extensive code for simple visualizations.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s---HxFTISc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://docs-us.oss-us-west-1.aliyuncs.com/images/py-dataviz-lib/matplotlib.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s---HxFTISc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://docs-us.oss-us-west-1.aliyuncs.com/images/py-dataviz-lib/matplotlib.png" alt="" width="800" height="785"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Pros&lt;/strong&gt;: Foundation for many other libraries; highly customizable.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cons&lt;/strong&gt;: Steeper learning curve; can require extensive code for simple visualizations; aesthetics might seem outdated.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Github: &lt;a href="https://github.com/matplotlib/matplotlib"&gt;https://github.com/matplotlib/matplotlib&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  No. 3 &lt;strong&gt;Plotly&lt;/strong&gt;
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;Stars received by plotly/plotly.py since 2023: 1705&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Plotly is also a multi-platform data visualization library like pygwalker. Plotly's company also builds Dash, which can turn your plotly charts code into a web app like a dashboard.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Pros&lt;/strong&gt;: Delivers interactive, web-ready visualizations; can be published as data apps with dash.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cons&lt;/strong&gt;: Online mode requires an internet connection; the free version has limitations on the number of plots and public visibility.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--3UlyD6Wa--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://raw.githubusercontent.com/cldougl/plot_images/add_r_img/plotly_2017.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--3UlyD6Wa--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://raw.githubusercontent.com/cldougl/plot_images/add_r_img/plotly_2017.png" alt="" width="720" height="449"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Github: &lt;a href="https://github.com/plotly/plotly.py"&gt;https://github.com/plotly/plotly.py&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  No. 4 &lt;strong&gt;Bokeh&lt;/strong&gt;
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;Stars received by bokeh/bokeh since 2023: 1126&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Bokeh is created by Anaconda, which is a very famous company in data science world.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Pros&lt;/strong&gt;: Built for interactive web visualizations; handles large datasets efficiently.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cons&lt;/strong&gt;: Syntax may seem unfamiliar to Matplotlib users; more tailored to web applications than static plots.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--MTS1ambL--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://docs-us.oss-us-west-1.aliyuncs.com/images/py-dataviz-lib/bokeh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--MTS1ambL--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://docs-us.oss-us-west-1.aliyuncs.com/images/py-dataviz-lib/bokeh.png" alt="" width="800" height="427"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Github: &lt;a href="https://github.com/bokeh/bokeh"&gt;https://github.com/bokeh/bokeh&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  No. 5 &lt;strong&gt;Seaborn&lt;/strong&gt;
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;Stars received by mwaskom/seaborn since 2023: 1111&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Seaborn is is build based on matplotlib, which means it benefits from the flexibility of matplotlib, but also inherits the verbosity of matplotlib.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Pros&lt;/strong&gt;: Built on Matplotlib with enhanced aesthetics; efficient for statistical plots.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cons&lt;/strong&gt;: Less customizable than Matplotlib; might not be suitable for advanced or non-statistical plots.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--okEUi5uV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://docs-us.oss-us-west-1.aliyuncs.com/images/py-dataviz-lib/seaborn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--okEUi5uV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://docs-us.oss-us-west-1.aliyuncs.com/images/py-dataviz-lib/seaborn.png" alt="" width="800" height="518"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Github: &lt;a href="https://github.com/mwaskom/seaborn"&gt;https://github.com/mwaskom/seaborn&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  No. 6 &lt;strong&gt;pyecharts&lt;/strong&gt;
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;Stars received by pyecharts/pyecharts since 2023: 1015&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;pyecharts is the python binding of the famous data visualization library apache/echarts in Javascript.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Pros&lt;/strong&gt;: support a wide range of chart types, even 3D and webGL.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cons&lt;/strong&gt;: complex options config.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Github: &lt;a href="https://github.com/pyecharts/pyecharts"&gt;https://github.com/pyecharts/pyecharts&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  No. 7 &lt;strong&gt;Altair&lt;/strong&gt;
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;Stars received by altair-viz/altair since 2023: 604&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Altair is build based on vega-lite, which is a very famaous data visualization library in Javascript and the academic world of visualization. It benefits almost all the advantages of vega-lite, such as declarative approach, web-ready outputs, and so on.&lt;br&gt;
The most important advatage is its declarative specification of interaction, which according to vega-lite's paper, as the grammar of interactive graphics.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--xIALFQ5o--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://docs-us.oss-us-west-1.aliyuncs.com/images/py-dataviz-lib/altair.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--xIALFQ5o--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://docs-us.oss-us-west-1.aliyuncs.com/images/py-dataviz-lib/altair.png" alt="" width="800" height="356"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Pros&lt;/strong&gt;: Declarative approach simplifies code; generates web-ready outputs. More intuitive operators for making graphics.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cons&lt;/strong&gt;: Due to vega-lite, there is a limit of customization/chart types. Making complex charts might require user to design complex signal flows.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Github: &lt;a href="https://github.com/altair-viz/altair"&gt;Altair&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  No. 8 &lt;strong&gt;plotnine&lt;/strong&gt;
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;Stars received by has2k1/plotnine since 2023: 323&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;plotnine is designed based on the grammar of graphics, which is a very famous theory in the academic world of visualization. The theory is also the foundation of ggplot2 in R.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--bgNkhSs---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://docs-us.oss-us-west-1.aliyuncs.com/images/py-dataviz-lib/plotnine.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--bgNkhSs---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://docs-us.oss-us-west-1.aliyuncs.com/images/py-dataviz-lib/plotnine.png" alt="" width="800" height="565"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Github: &lt;a href="https://github.com/has2k1/plotnine"&gt;https://github.com/has2k1/plotnine&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  No. 9 &lt;strong&gt;Holoviews&lt;/strong&gt;
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;Stars received by holoviz/holoviews since 2023: 169&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Holoviews is build based on bokeh, which means it benefits from the efficiency of bokeh, but also inherits the unfamiliar syntax of bokeh.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--OzlobWAt--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://docs-us.oss-us-west-1.aliyuncs.com/images/py-dataviz-lib/holoviews.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--OzlobWAt--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://docs-us.oss-us-west-1.aliyuncs.com/images/py-dataviz-lib/holoviews.png" alt="" width="800" height="519"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Github: &lt;a href="https://github.com/holoviz/holoviews"&gt;https://github.com/holoviz/holoviews&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  No. 10 &lt;strong&gt;vispy&lt;/strong&gt;
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;Stars received by vispy/vispy since 2023: 154&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;vispy is targeted at users who are interested in OpenGL. It provides some low-level APIs for users to build more flexible and customizable graphics.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--tT7zJa6p--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://docs-us.oss-us-west-1.aliyuncs.com/images/py-dataviz-lib/vispy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--tT7zJa6p--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://docs-us.oss-us-west-1.aliyuncs.com/images/py-dataviz-lib/vispy.png" alt="" width="800" height="790"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Github: &lt;a href="https://github.com/vispy/vispy"&gt;https://github.com/vispy/vispy&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;In 2023, Python's data visualization landscape is rich and varied, with &lt;a href="https://github.com/kanaries/pygwalker"&gt;&lt;strong&gt;PyGWalker&lt;/strong&gt;&lt;/a&gt; leading the charge towards intuitive, interactive exploration tools. While traditional powerhouses like &lt;strong&gt;Matplotlib&lt;/strong&gt; remain relevant, there's a notable shift towards web-ready and interactive visualizations, as seen with &lt;strong&gt;Plotly&lt;/strong&gt; and &lt;strong&gt;Bokeh&lt;/strong&gt;. The diversity in this top 10 list indicates that the ideal library hinges on project specifics and personal preference.&lt;/p&gt;

&lt;h3&gt;
  
  
  Key Takeaways:
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;PyGWalker's&lt;/strong&gt; rise signifies the demand for user-friendly, interactive data tools.&lt;/li&gt;
&lt;li&gt;Web-ready visualizations are gaining traction.&lt;/li&gt;
&lt;li&gt;Traditional libraries like &lt;strong&gt;Matplotlib&lt;/strong&gt; still hold importance due to their flexibility.&lt;/li&gt;
&lt;li&gt;The right choice depends on project needs and desired customization.&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>datascience</category>
      <category>python</category>
      <category>beginners</category>
      <category>opensource</category>
    </item>
    <item>
      <title>Unlocking Interactive Visualizations in Jupyter Notebook: PyGWalker Meets Snowflake</title>
      <dc:creator>FlyingBanana</dc:creator>
      <pubDate>Tue, 10 Oct 2023 04:27:53 +0000</pubDate>
      <link>https://forem.com/observedobserver/unlocking-interactive-visualizations-in-jupyter-notebook-pygwalker-meets-snowflake-14md</link>
      <guid>https://forem.com/observedobserver/unlocking-interactive-visualizations-in-jupyter-notebook-pygwalker-meets-snowflake-14md</guid>
      <description>&lt;p&gt;In the evolving world of data analysis, interactivity and user experience play a pivotal role. Analysts need solutions that are both powerful in handling large datasets and flexible in presenting insights. PyGWalker is an intriguing solution that offers the ability to turn your Pandas dataframes into interactive visualizations right within your Jupyter notebooks. Essentially, it serves as an open-source alternative to heavyweight visualization platforms like Tableau and PowerBI.&lt;/p&gt;

&lt;p&gt;In this article, we'll explore how you can supercharge PyGWalker by integrating it with Snowflake, a cloud data platform known for its capability to process enormous datasets efficiently.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--8d_iOfC2--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/vbiscrrb6ynbeylzkg4x.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--8d_iOfC2--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/vbiscrrb6ynbeylzkg4x.png" alt="pygwalker + snowflake to visual earthquake data" width="800" height="445"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Getting Started&lt;/strong&gt;
&lt;/h3&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;Installation&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;To kick things off, you need to install the &lt;code&gt;pygwalker&lt;/code&gt; library and the accompanying Snowflake plugin. Use the pip commands below:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;pip install --upgrade --pre pygwalker
pip install --upgrade --pre "pygwalker[snowflake]" 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h4&gt;
  
  
  &lt;strong&gt;Setting Up The Connector&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;The primary step in integrating PyGWalker with Snowflake is setting up a connector. This allows the library to fetch data directly from Snowflake databases and turn it into interactive plots.&lt;/p&gt;

&lt;p&gt;Here's a quick &lt;a href="https://docs.kanaries.net/pygwalker/api-reference/snowflake"&gt;code snippet&lt;/a&gt; to guide you:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;pygwalker&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="n"&gt;pyg&lt;/span&gt;
&lt;span class="kn"&gt;from&lt;/span&gt; &lt;span class="nn"&gt;pygwalker.data_parsers.database_parser&lt;/span&gt; &lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;Connector&lt;/span&gt;

&lt;span class="n"&gt;conn&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;Connector&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="s"&gt;"snowflake://user_name:password@account_identifier/database/schema"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="s"&gt;"""
        SELECT
            *
        FROM
            SNOWFLAKE_SAMPLE_DATA.TPCH_SF1.ORDERS
    """&lt;/span&gt;
&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="n"&gt;walker&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;pyg&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;walk&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;conn&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Note&lt;/strong&gt;: Ensure that you replace the placeholders in the connection string with your Snowflake credentials.&lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;Understanding The Connection String&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;Snowflake provides two formats for the connection string:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Account Name Format&lt;/strong&gt;:
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;   snowflake://&amp;lt;user_login_name&amp;gt;:&amp;lt;password&amp;gt;@&amp;lt;orgname&amp;gt;-&amp;lt;account_name&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Account Locator Format&lt;/strong&gt;:
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;   snowflake://&amp;lt;user_login_name&amp;gt;:&amp;lt;password&amp;gt;@&amp;lt;account_locator&amp;gt;.&amp;lt;region_id&amp;gt;.&amp;lt;cloud&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Choose the format that best suits your Snowflake setup.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Wrapping Up&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;With PyGWalker's integration with Snowflake, analysts can now effortlessly visualize vast datasets right within their Jupyter notebooks. This synergy transforms data analysis workflows, offering both depth and ease. So the next time you're looking for a nimble yet powerful data visualization solution, consider giving PyGWalker and Snowflake a whirl!&lt;/p&gt;

&lt;h3&gt;
  
  
  Related resources
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://docs.kanaries.net/pygwalker/api-reference/snowflake"&gt;pygwalker + snowflake official doc&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>PyGWalker with DuckDB is all you need for large data exploration</title>
      <dc:creator>FlyingBanana</dc:creator>
      <pubDate>Tue, 15 Aug 2023 10:43:32 +0000</pubDate>
      <link>https://forem.com/observedobserver/pygwalker-with-duckdb-is-all-you-need-for-large-data-exploration-37l8</link>
      <guid>https://forem.com/observedobserver/pygwalker-with-duckdb-is-all-you-need-for-large-data-exploration-37l8</guid>
      <description>&lt;p&gt;&lt;a href="https://github.com/Kanaries/pygwalker"&gt;PyGWalker&lt;/a&gt; is a python library that turns your pandas dataframe into a tableau style user interface for visual analysis.&lt;/p&gt;

&lt;p&gt;It is very convenient for data analysts to explore and visualize their dataset. For any dataframe in python, you can turn it into a visual exploration interface with only one line of code:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;pandas&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="n"&gt;pd&lt;/span&gt;
&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;pygwalker&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="n"&gt;pyg&lt;/span&gt;

&lt;span class="n"&gt;df&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;pd&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;read_csv&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;'your_dataset.csv'&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="c1"&gt;# start explore your dataset!
&lt;/span&gt;&lt;span class="n"&gt;walker&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;pyg&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;walk&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;df&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;which then you can start your analysis. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--sG8ntQIf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://docs-us.oss-us-west-1.aliyuncs.com/img/pygwalker/travel-ani-1-light.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--sG8ntQIf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://docs-us.oss-us-west-1.aliyuncs.com/img/pygwalker/travel-ani-1-light.gif" alt="" width="800" height="516"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In the past, visual exploration costs time and numbers of code to implement. But with pygwalker, you do not need to google how to make visualizations, just use drag and drop operations or natural language queries to visualize your data.&lt;/p&gt;

&lt;p&gt;In early versions of PyGWalker, there still some performance issues for handling large dataset.&lt;/p&gt;

&lt;p&gt;However, a recent update (version 0.4.2) of pygwalker published with a new computation engine based on DuckDB. It boost its performance and allow you to explore much larger datasets.&lt;/p&gt;

&lt;p&gt;Another test with 300M rows only cost 500ms for user's operation. Maybe in most of cases, you don't need a heavy BI systems with large computation cluster services.&lt;/p&gt;

&lt;p&gt;A &lt;a href="https://github.com/Kanaries/pygwalker"&gt;PyGWalker&lt;/a&gt; with DuckDB on your local devices is all you need.&lt;/p&gt;

</description>
      <category>datascience</category>
      <category>javascript</category>
      <category>webdev</category>
      <category>database</category>
    </item>
    <item>
      <title>PyGWalker: A Python Library for Exploratory Data Analysis with Visualization</title>
      <dc:creator>FlyingBanana</dc:creator>
      <pubDate>Mon, 06 Mar 2023 11:52:07 +0000</pubDate>
      <link>https://forem.com/observedobserver/pygwalker-a-python-library-for-exploratory-data-analysis-with-visualization-45b9</link>
      <guid>https://forem.com/observedobserver/pygwalker-a-python-library-for-exploratory-data-analysis-with-visualization-45b9</guid>
      <description>&lt;p&gt;&lt;a href="https://github.com/Kanaries/pygwalker"&gt;&lt;img alt="" src="https://res.cloudinary.com/practicaldev/image/fetch/s--MfWfvUsW--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://user-images.githubusercontent.com/8137814/221879671-70379d15-81ac-44b9-b267-a8fa3842a0d9.png" width="800" height="578"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;PyGWalker: A Python Library for Exploratory Data Analysis with Visualization&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://github.com/Kanaries/pygwalker"&gt;&lt;strong&gt;PyGWalker&lt;/strong&gt;&lt;/a&gt; can simplify your Jupyter Notebook data analysis and data visualization workflow, by turning your pandas dataframe (and polars dataframe) into a Tableau-style User Interface for visual exploration.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;PyGWalker&lt;/strong&gt; (pronounced like "Pig Walker", just for fun) is named as an abbreviation of "&lt;strong&gt;Py&lt;/strong&gt;thon binding of &lt;strong&gt;G&lt;/strong&gt;raphic &lt;strong&gt;Walker&lt;/strong&gt;". It integrates Jupyter Notebook (or other jupyter-based notebooks) with &lt;a href="https://github.com/Kanaries/graphic-walker"&gt;Graphic Walker&lt;/a&gt;, a different type of open-source alternative to Tableau. It allows data scientists to analyze data and visualize patterns with simple drag-and-drop operations.&lt;/p&gt;

&lt;p&gt;Visit &lt;a href="https://colab.research.google.com/drive/171QUQeq-uTLgSj1u-P9DQig7Md1kpXQ2?usp=sharing"&gt;Google Colab&lt;/a&gt;, &lt;a href="https://www.kaggle.com/asmdef/pygwalker-test"&gt;Kaggle Code&lt;/a&gt;, &lt;a href="https://mybinder.org/v2/gh/Kanaries/pygwalker/main?labpath=tests%2Fmain.ipynb"&gt;Binder&lt;/a&gt; or &lt;a href="https://graphic-walker.kanaries.net/"&gt;Graphic Walker Online Demo&lt;/a&gt; to test it out!&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;PyGWalker will add more support such as R in the future.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Getting Started
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Tested Environments
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;[x] Jupyter Notebook&lt;/li&gt;
&lt;li&gt;[x] Google Colab&lt;/li&gt;
&lt;li&gt;[x] Kaggle Code&lt;/li&gt;
&lt;li&gt;[x] Jupyter Lab (WIP: There're still some tiny CSS issues)&lt;/li&gt;
&lt;li&gt;[x] Databricks Notebook (Since version &lt;code&gt;0.1.4&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;[x] Jupyter Extension for Visual Studio Code (Since version &lt;code&gt;0.1.4&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;[x] Hex Projects (Since version &lt;code&gt;0.1.4&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;[x] Most web applications compatiable with IPython kernels. (Since version &lt;code&gt;0.1.4&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;[ ] ...feel free to raise an issue for more environments.&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
  &lt;tr&gt;
    &lt;th&gt;
      &lt;a href="https://www.kaggle.com/asmdef/pygwalker-test"&gt;Run in Kaggle&lt;/a&gt;
    &lt;/th&gt;
    &lt;th&gt;
      &lt;a href="https://colab.research.google.com/drive/171QUQeq-uTLgSj1u-P9DQig7Md1kpXQ2?usp=sharing"&gt;Run in Colab&lt;/a&gt;
    &lt;/th&gt;
  &lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
  &lt;tr&gt;
    &lt;td&gt;
      &lt;a href="https://www.kaggle.com/asmdef/pygwalker-test"&gt;
        &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--WovcNEmH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://docs-us.oss-us-west-1.aliyuncs.com/img/pygwalker/kaggle.png" alt="Kaggle Code" width="800" height="512"&gt;
      &lt;/a&gt;
    &lt;/td&gt;
    &lt;td&gt;
      &lt;a href="https://colab.research.google.com/drive/171QUQeq-uTLgSj1u-P9DQig7Md1kpXQ2?usp=sharing"&gt;
        &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--KGEPWq2b--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://docs-us.oss-us-west-1.aliyuncs.com/img/pygwalker/colab.png" alt="Google Colab" width="800" height="556"&gt;
      &lt;/a&gt;
    &lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  Setup pygwalker
&lt;/h3&gt;

&lt;p&gt;Before using pygwalker, make sure to install the packages through the command line using pip or conda.&lt;/p&gt;

&lt;h4&gt;
  
  
  pip
&lt;/h4&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;pip &lt;span class="nb"&gt;install &lt;/span&gt;pygwalker
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Note&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;For an early trial, you can install with &lt;code&gt;pip install pygwalker --upgrade&lt;/code&gt; to keep your version up to date with the latest release or even &lt;code&gt;pip install git+https://github.com/Kanaries/pygwalker@main&lt;/code&gt; to obtain latest features and bug-fixes.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h4&gt;
  
  
  Conda-forge
&lt;/h4&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;conda &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;-c&lt;/span&gt; conda-forge pygwalker
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;or&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;mamba &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;-c&lt;/span&gt; conda-forge pygwalker
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;See &lt;a href="https://github.com/conda-forge/pygwalker-feedstock"&gt;conda-forge feedstock&lt;/a&gt; for more help.&lt;/p&gt;

&lt;h3&gt;
  
  
  Use pygwalker in Jupyter Notebook
&lt;/h3&gt;

&lt;p&gt;Import pygwalker and pandas to your Jupyter Notebook to get started.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;pandas&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="n"&gt;pd&lt;/span&gt;
&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;pygwalker&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="n"&gt;pyg&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You can use pygwalker without breaking your existing workflow. For example, you can call up Graphic Walker with the dataframe loaded in this way:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;df&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;pd&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;read_csv&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;'./bike_sharing_dc.csv'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;parse_dates&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s"&gt;'date'&lt;/span&gt;&lt;span class="p"&gt;])&lt;/span&gt;
&lt;span class="n"&gt;gwalker&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;pyg&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;walk&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;df&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;And you can use pygwalker with polars (since &lt;code&gt;pygwalker&amp;gt;=0.1.4.7a0&lt;/code&gt;):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;polars&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="n"&gt;pl&lt;/span&gt;
&lt;span class="n"&gt;df&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;pl&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;read_csv&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;'./bike_sharing_dc.csv'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="n"&gt;try_parse_dates&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="bp"&gt;True&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="n"&gt;gwalker&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;pyg&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;walk&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;df&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You can even try it online, simply visiting &lt;a href="https://mybinder.org/v2/gh/Kanaries/pygwalker/main?labpath=tests%2Fmain.ipynb"&gt;Binder&lt;/a&gt;, &lt;a href="https://colab.research.google.com/drive/171QUQeq-uTLgSj1u-P9DQig7Md1kpXQ2?usp=sharing"&gt;Google Colab&lt;/a&gt; or &lt;a href="https://www.kaggle.com/asmdef/pygwalker-test"&gt;Kaggle Code&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--SHyEBzst--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://docs-us.oss-us-west-1.aliyuncs.com/img/pygwalker/travel-ani-0-light.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--SHyEBzst--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://docs-us.oss-us-west-1.aliyuncs.com/img/pygwalker/travel-ani-0-light.gif" alt="travel-ani-0-light" width="800" height="516"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;That's it. Now you have a Tableau-like user interface to analyze and visualize data by dragging and dropping variables.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--sG8ntQIf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://docs-us.oss-us-west-1.aliyuncs.com/img/pygwalker/travel-ani-1-light.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--sG8ntQIf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://docs-us.oss-us-west-1.aliyuncs.com/img/pygwalker/travel-ani-1-light.gif" alt="travel-ani-1-light" width="800" height="516"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Cool things you can do with Graphic Walker:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You can change the mark type into others to make different charts, for example, a line chart:
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--lWReq04A--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://user-images.githubusercontent.com/8137814/221894699-b9623304-4eb1-4051-b29d-ca4a913fb7c7.png" alt="graphic walker line chart" width="800" height="513"&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;ul&gt;
&lt;li&gt;To compare different measures, you can create a concat view by adding more than one measure into rows/columns.
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--37xohakO--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://user-images.githubusercontent.com/8137814/221894334-16e5f674-1b81-4cc1-ad8a-3240950b51b7.png" alt="graphic walker area chart" width="800" height="523"&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;To make a facet view of several subviews divided by the value in dimension, put dimensions into rows or columns to make a facets view. The rules are similar to Tableau.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ECQ9Sjob--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://user-images.githubusercontent.com/8137814/221894480-b5ec5df2-d0bb-45bc-aa3d-6479920b6fe2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ECQ9Sjob--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://user-images.githubusercontent.com/8137814/221894480-b5ec5df2-d0bb-45bc-aa3d-6479920b6fe2.png" alt="graphic walker scatter chart" width="800" height="546"&gt;&lt;/a&gt;&lt;/p&gt;



&lt;/li&gt;
&lt;li&gt;&lt;p&gt;You can view the data frame in a table and configure the analytic types and semantic types.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--qI_AJeaG--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://user-images.githubusercontent.com/8137814/221895610-76165bc6-95ee-4567-a55b-41d47d3310eb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--qI_AJeaG--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://user-images.githubusercontent.com/8137814/221895610-76165bc6-95ee-4567-a55b-41d47d3310eb.png" alt="page-data-view-light" width="800" height="563"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;You can save the data exploration result to a local file&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For more detailed instructions, visit the &lt;a href="https://github.com/Kanaries/graphic-walker"&gt;Graphic Walker GitHub page&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Resources
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Check out more resources about Graphic Walker on &lt;a href="https://github.com/Kanaries/graphic-walker"&gt;Graphic Walker GitHub&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;We are also working on &lt;a href="https://kanaries.net"&gt;RATH&lt;/a&gt;: an Open Source, Automate exploratory data analysis software that redefines the workflow of data wrangling, exploration and visualization with AI-powered automation. Check out the &lt;a href="https://kanaries.net"&gt;Kanaries website&lt;/a&gt; and &lt;a href="https://github.com/Kanaries/Rath"&gt;RATH GitHub&lt;/a&gt; for more!&lt;/li&gt;
&lt;li&gt;If you encounter any issues and need support, join our &lt;a href="https://join.slack.com/t/kanaries-community/shared_invite/zt-1pcosgbua-E_GBPawQOI79C41dPDyyvw"&gt;Slack&lt;/a&gt; or &lt;a href="https://discord.gg/Z4ngFWXz2U"&gt;Discord&lt;/a&gt; channels.&lt;/li&gt;
&lt;/ul&gt;

</description>
    </item>
    <item>
      <title>Have a Bad memory? Open Source N-Back game may help improve your working memory</title>
      <dc:creator>FlyingBanana</dc:creator>
      <pubDate>Tue, 07 Feb 2023 15:58:38 +0000</pubDate>
      <link>https://forem.com/observedobserver/have-a-bad-memory-open-source-n-back-game-may-help-improve-your-working-memory-3627</link>
      <guid>https://forem.com/observedobserver/have-a-bad-memory-open-source-n-back-game-may-help-improve-your-working-memory-3627</guid>
      <description>&lt;h1&gt;
  
  
  Open Recall
&lt;/h1&gt;

&lt;p&gt;&lt;a href="https://github.com/ObservedObserver/open-recall" rel="noopener noreferrer"&gt;Open Recall&lt;/a&gt; is an Open Source N-Back Task Game like Simply-Recall designed to improve working memory and cognitive abilities.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Research shows that N-Back training may lead to gains in fluid intelligence (IQ) and working memory ability (Soveri et al., 2017).&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The N-Back task is a memory training game that is designed to improve working memory and cognitive abilities. To play the game, you will be presented with a sequence of items such as letters, numbers, or words. Your goal is to indicate whenever the current item matches the item that was presented "n" steps back in the sequence. The value of "n" determines the difficulty of the task. For example, if "n" is set to 1, you would need to recall the item that was presented one step back. If "n" is set to 2, you would need to recall the item that was presented two steps back, and so on. The game typically continues until you have completed a certain number of rounds or made a certain number of errors. To play, simply focus on the items as they are presented and try to recall the item that was presented "n" steps back. Good luck!&lt;/p&gt;

&lt;h2&gt;
  
  
  Play it
&lt;/h2&gt;

&lt;p&gt;You can play the game at &lt;a href="https://open-recall.vercel.app/" rel="noopener noreferrer"&gt;Open Recall On Vercel&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Github Repo at &lt;a href="https://github.com/ObservedObserver/open-recall" rel="noopener noreferrer"&gt;Open Recall&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Game
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;step 1: click &lt;code&gt;start&lt;/code&gt; button.&lt;/li&gt;
&lt;li&gt;step 2: set game time limit and level, and click &lt;code&gt;play&lt;/code&gt; button.&lt;/li&gt;
&lt;li&gt;step 3: enjoy the game.&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
    &lt;tr&gt;
        &lt;th&gt;Home&lt;/th&gt;
        &lt;th&gt;Setting&lt;/th&gt;
        &lt;th&gt;Guide&lt;/th&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
        &lt;td&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fch-open-sharing.oss-us-west-1.aliyuncs.com%2Fopen-recall%2Fopen-recall-home.png" width="682" height="1480"&gt;&lt;/td&gt;
        &lt;td&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fch-open-sharing.oss-us-west-1.aliyuncs.com%2Fopen-recall%2Fopen-recall-play.png" width="686" height="1484"&gt;&lt;/td&gt;
        &lt;td&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fch-open-sharing.oss-us-west-1.aliyuncs.com%2Fopen-recall%2Fopen-recall-desc.png" width="688" height="1484"&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
        &lt;th&gt;Playing&lt;/th&gt;
        &lt;th&gt;Score&lt;/th&gt;
        &lt;th&gt;History&lt;/th&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
        &lt;td&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fch-open-sharing.oss-us-west-1.aliyuncs.com%2Fopen-recall%2Fopen-recall-game.png" width="684" height="1486"&gt;&lt;/td&gt;
        &lt;td&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fch-open-sharing.oss-us-west-1.aliyuncs.com%2Fopen-recall%2Fopen-recall-result.png" width="682" height="1480"&gt;&lt;/td&gt;
        &lt;td&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fch-open-sharing.oss-us-west-1.aliyuncs.com%2Fopen-recall%2Frecall-history.png" width="684" height="1484"&gt;&lt;/td&gt;
    &lt;/tr&gt;

&lt;/table&gt;&lt;/div&gt;

&lt;blockquote&gt;
&lt;p&gt;When Level = 2, you need to remember the previous two items. Suppose we have a list: Apple (n - 2), Banana (n - 1), Apple (n). Click yes because the current item is the same as the item two steps back.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Deploy
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npm &lt;span class="nb"&gt;install
&lt;/span&gt;npm run build
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
      <category>devto</category>
      <category>announcement</category>
      <category>codenewbie</category>
      <category>discuss</category>
    </item>
    <item>
      <title>Graphic-Walker: A different type of open-source alternative to Tableau</title>
      <dc:creator>FlyingBanana</dc:creator>
      <pubDate>Fri, 03 Feb 2023 12:18:14 +0000</pubDate>
      <link>https://forem.com/observedobserver/graphic-walker-a-different-type-of-open-source-alternative-to-tableau-f6i</link>
      <guid>https://forem.com/observedobserver/graphic-walker-a-different-type-of-open-source-alternative-to-tableau-f6i</guid>
      <description>&lt;p&gt;Hello, guys~ Recently, I have been participating in development of a data exploration and visualization app which can be used as a different type of open-source alternative to Tableau. It is extremely easy to embed in your apps just as a react component. The original purpose is to develop a lite plugin that can be easily embedded in most cases, it doesn't have to be a large heavy BI system, but a lite graphic plugin.&lt;/p&gt;

&lt;p&gt;GitHub: Kanaries/graphic-walker, &lt;a href="https://github.com/Kanaries/graphic-walker" rel="noopener noreferrer"&gt;https://github.com/Kanaries/graphic-walker&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7fg9cqcbc9mfir3ecq3m.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7fg9cqcbc9mfir3ecq3m.png" width="800" height="467"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The main features implemented:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A user-friendly drag-and-drop-based interaction for exploratory data analysis with visualizations.&lt;/li&gt;
&lt;li&gt;A grammar of graphics-based visual analytic user interface where users can build visualization from low-level visual channel encodings.&lt;/li&gt;
&lt;li&gt;A Data Explainer explains why some patterns occur / what may cause them.&lt;/li&gt;
&lt;li&gt;Using web workers and indexed DB to handle computation tasks which allows you to use it as a pure front-end app. (working on use duckDB as data engine.)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;And you can use it in your app as a react component!&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight typescript"&gt;&lt;code&gt;&lt;span class="k"&gt;import&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nx"&gt;GraphicWalker&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;@kanaries/graphic-walker&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;YourEmbeddingTableauStyleApp&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;React&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;FC&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;props&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nx"&gt;dataSource&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;fields&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;props&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;GraphicWalker&lt;/span&gt;
        &lt;span class="nx"&gt;dataSource&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;dataSource&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;
        &lt;span class="nx"&gt;rawFields&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;fields&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;
        &lt;span class="nx"&gt;spec&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;graphicWalkerSpec&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;
        &lt;span class="nx"&gt;i18nLang&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;langStore&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;lang&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;
    &lt;span class="sr"&gt;/&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="k"&gt;export&lt;/span&gt; &lt;span class="k"&gt;default&lt;/span&gt; &lt;span class="nx"&gt;YourEmbeddingTableauStyleApp&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Feedbacks and advice are welcome! What features do you think are important to add?&lt;/p&gt;

</description>
      <category>crypto</category>
      <category>cryptocurrency</category>
      <category>ethereum</category>
      <category>blockchain</category>
    </item>
    <item>
      <title>Using Pivot Chart to Replace Your Pivot Table</title>
      <dc:creator>FlyingBanana</dc:creator>
      <pubDate>Sun, 29 Jan 2023 16:52:54 +0000</pubDate>
      <link>https://forem.com/observedobserver/using-pivot-chart-to-replace-your-pivot-table-4bh3</link>
      <guid>https://forem.com/observedobserver/using-pivot-chart-to-replace-your-pivot-table-4bh3</guid>
      <description>&lt;p&gt;Pivot-Chart is an open-source comprehensive data visualization tool that enhances pivot tables with visualizations and charts, offering a more intuitive and informative way to analyze your data. With Pivot-Chart, you can elevate your data analysis and take a new approach to exploring your data. Unlike other pivot-table + vis solution, pivot chart retains nest multi-level aggregation feature of pivot table, which allows you to compare between different aggregation levels and make it easier to drill down and roll up.&lt;/p&gt;

&lt;p&gt;Integrating Pivot-Chart into your data applications is easy, simply import the npm package. While this is a proof-of-concept project, your feedback and suggestions are valued and appreciated. &lt;/p&gt;

&lt;p&gt;features:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;All pivot table features&lt;/li&gt;
&lt;li&gt;Supports cell display as charts&lt;/li&gt;
&lt;li&gt;Retains nest multi-level aggregation feature of pivot table&lt;/li&gt;
&lt;li&gt;Easy to use and integrate with your projects as a component in web.&lt;/li&gt;
&lt;li&gt;Open-source and customizable to meet your needs&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Github Repo: &lt;a href="https://github.com/ObservedObserver/pivot-chart"&gt;https://github.com/ObservedObserver/pivot-chart&lt;/a&gt;&lt;br&gt;
Demo on Vercel: &lt;a href="https://pivot-chart.vercel.app/"&gt;https://pivot-chart.vercel.app/&lt;/a&gt;&lt;br&gt;
HN: &lt;a href="https://news.ycombinator.com/item?id=34569184"&gt;https://news.ycombinator.com/item?id=34569184&lt;/a&gt;&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>opensource</category>
      <category>react</category>
      <category>datascience</category>
    </item>
  </channel>
</rss>
