Làm cách nào để thay đổi màu trong các ô đánh dấu ipython / jupyter notebook?


106

Tôi chỉ muốn định dạng một chuỗi cụ thể trong một ô. Tôi thay đổi định dạng của ô đó thành "Markdown" nhưng tôi không chắc chắn cách thay đổi màu văn bản của một từ.

Tôi không muốn thay đổi giao diện của toàn bộ sổ tay (thông qua tệp CSS).

Câu trả lời:


147

Bạn chỉ cần sử dụng các thẻ html thô như

foo <font color='red'>bar</font> foo

Lưu ý rằng điều này sẽ không tồn tại khi chuyển đổi sổ ghi chép sang latex.

Vì có một số phàn nàn về việc không dùng giải pháp được đề xuất. Chúng hoàn toàn hợp lệ và Scott đã trả lời câu hỏi bằng một cách tiếp cận gần đây hơn, tức là dựa trên CSS. Tuy nhiên, câu trả lời này cho thấy một số cách tiếp cận chung để sử dụng các thẻ html trong IPython để tạo kiểu nội dung ô đánh dấu ngoài khả năng đánh dấu đơn thuần có sẵn.


1
@jayarjo Trong IPython 2.1, điều này vẫn hoạt động hoàn hảo! Bạn có thể cung cấp thêm thông tin về những gì bạn đã thử?
Jakob

Làm việc cho tôi với Jupyter NB phiên bản 4.3.1
Austin

64

Tương tự như câu trả lời của Jakob, bạn có thể sử dụng các thẻ HTML. Chỉ cần lưu ý rằng colorthuộc tính của font( <font color=...>) không được dùng trong HTML5 . Cú pháp sau sẽ tuân thủ HTML5:

This <span style="color:red">word</span> is not black.

Cảnh báo tương tự mà Jakob đưa ra có lẽ vẫn được áp dụng:

Lưu ý rằng điều này sẽ không tồn tại khi chuyển đổi sổ ghi chép sang latex.


@jayarjo Tôi vừa thử giải pháp của mình trong IPython 1.1.0 và nó hoạt động tốt đối với tôi. Bạn có thể cung cấp thêm thông tin về những gì bạn đã thử và cách thiết lập môi trường của bạn không? Hãy nhớ thay đổi loại ô thành Markdown, có thể được thực hiện thông qua menu Cell> Cell Type.
Scott H,

Tôi đang thử cái này trên github.
jayarjo

@jayarjo, câu hỏi này đặc biệt là về tô màu văn bản trong máy tính xách tay IPython, cho phép đánh dấu văn bản. Đối với hành vi của màu sắc trong tệp đánh dấu GitHub, hãy xem câu hỏi sau cụ thể về vấn đề đó. Câu trả lời ngắn gọn là dường như không có cách nào để chỉ định màu cho văn bản trong tài liệu đánh dấu GitHub. stackoverflow.com/questions/11509830/…
Scott H

@ScottH: Tôi không hiểu ý bạn là 'chuyển đổi notebook thành latex'. Tôi có thể chuyển đổi một phần văn bản trong khoảng thời gian thành latex và jupyter làm cho latex có màu đỏ.
Shishir Pandey

@ShishirPandey: Điều tôi đã đề cập đến với "chuyển đổi sổ ghi chép sang latex" là bạn có thể chuyển đổi sổ ghi chép sang LaTex (một ngôn ngữ sắp chữ) thông thường bằng cách sử dụng ipython nbconvert --to latex mynotebook.ipynb. Ngoài ra, trong sổ tay đang mở, bạn có thể đi tới Tệp> Tải xuống dưới dạng ...> PDF qua LaTex. Nhưng tôi tin rằng đặc tả màu thông qua kiểu html / css có thể không được dịch chính xác sang LaTex. Tôi chưa cài đặt LaTex vào lúc này, vì vậy tôi không thể xác minh lại, nhưng tôi nghĩ đó là trường hợp.
Scott H

15

Ví dụ: nếu bạn muốn làm cho màu của "văn bản" là màu xanh lục, chỉ cần nhập:

<font color='green'>text</font>

11

Một cách khác để làm điều đó là nhập môi trường LaTeX trong sổ ghi chép và thay đổi màu từ đó (điều này thật tuyệt nếu bạn thông thạo LaTeX hơn HTML). Thí dụ:

$\color{red}{\text{ciao}}$

sẽ hiển thị ciaomàu đỏ.


1
<p style="font-family: Arial; font-size:1.4em;color:gold;"> Golden </p>

hoặc là

Text <span style="font-family: Arial; font-size:1.4em;color:gold;"> Golden </p> Text

1

Nếu không có đề xuất nào ở trên phù hợp với bạn, hãy thử sử dụng stylethuộc tính.

**Notes**
<p style="color:red;">ERROR: Setting focus didn't work for me when I tried from jupyter. However it worked well when I ran it from the terminal</p>

Điều này cho tôi kết quả sau

nhập mô tả hình ảnh ở đây


0

Màu văn bản có thể được thay đổi bằng cách sử dụng,

<span style='color:green'> message/text </span>
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.